- Today
- Total
프로그래밍 농장
컴퓨터 / os / 프로그램에 관한 기본 상식 본문
컴퓨터
컴퓨터는 크게 하드웨어와 소프트웨어로 나누어진다.
하드웨어는 컴퓨터가 작동하기 위해 기본적으로 필요한 장치들이다.
소프트웨어는 컴퓨터를 통제하거나 컴퓨터에 명령을 내려서 작업을 수행하게 하는 프로그램이다.
아래의 사진을 보면 이해하기쉽다.
이처럼 컴퓨터에는 하드웨어와 소프트웨어가 존재하는데, 이 두개가 맞물려 구동되기 위해서는 os( 운영체제 ) 가 필요하다.
-운영체제(os) 는 컴퓨터의 하드웨어를 제어하고 응용 소프트웨어를 위한 기반 환경을 제공하여, 사용자가 컴퓨터를 사용할 수 있도록 중재 역할을 한다고 정의된다. 쉽게 말하면, 하드웨어와 소프트웨어를 연결해주는 역할이다. 8/32/64 BIT 운영체제 존재 --> 32BIT의 경우, 2^32의 데이터를 한번에 처리할수 있는 능력을 가진 운영체제라고 생각하면된다. 물론 비트에맞게 운영체제를 돌려야되며, 64비트운영에서 32운영체제구동가능 또한 가능하다.
+
SHELL : 입력/출력결과확인 모두 가능한 창. 연결이라는 의미를 가짐. ex) Python 에서의 수정/출력가능.
SHELL이라는 프로그램을 통해서 명령(코드를 작성)하여서 결과값까지 확인이 가능하다.
콘솔 : 출력결과만 확인가능한 창. ( ex) c에서의 콘솔창 )
RAM이란? -컴퓨터에 저장하고싶은것들 모두저장하는곳 ( = 주 기억장치)
(-> 보조기억장치 : HDD/SSD/USB ... 보조기억장치가득찼을떄 RAM에 저장하기떄문에 느려지는원인이 될수있다.)
*OS 커널 스페이스 - 드라이버 설치 (하드웨어 ㅡ 장치의 연결 프로그램 설치)
RAM의 구성
STACK | 지역변수 / 매개변수 -STACK 차면 내려감 |
STACK/HEAP 만날시 STACK OVERFLOW 오류발생 | |
HEAP | 입력메모리 -HEAP 차면 올라감 |
BSS | |
DATA | |
TEXT | 상수 ( 0,1) |
*CTRL+ALT+DLT -> 작업관리자 - 프로세스 - 메모리 -> 현재 사용(저장)중인 메모리양을 확인가능하다.
그렇다면, 우리가 프로그래밍을 하면서 사용하는 컴파일 / 컴파일러란 무었일까?
-컴파일이란? - 사람의 언어를 컴퓨터로 변환해 주는과정. 컴파일키 -> 디버그(오류검사작업) -> 빌드(실행프로그램을 만들어주는 작업) -> 링크(실행프로그램이 저장된 주소) -> 실행 프로그램 구동 과정으로 이루어진다.
-컴파일러? -컴파일을 해주는 개발환경프로그램 ex) 비쥬얼 스튜디오, 이클립스 etc...
'IT 관련 정보' 카테고리의 다른 글
알고리즘 사이트 [ https://codeup.kr ] (0) | 2019.10.04 |
---|---|
"마음껏 사용하세요"...AI가 만든 공짜 인물 사진 (0) | 2019.10.03 |
본인 IP 주소 확인법 (0) | 2019.10.01 |
Java EE와 Java SE의 차이점 + etc (0) | 2019.09.28 |
문자열에 대해서 ( 아스키코드, 유니코드란?) (0) | 2019.06.21 |