컴퓨터

1) 메모리bit를 이용하여 Data(비트)가 저장되는 공간

 

2) I/O (Input and Output) : 입력과 출력

입력 : 컴퓨터로 데이터를 주는 것 (마우스, 키보드 등)

출력 : 컴퓨터가 우리에게 데이터를 주는 것 (모니터, 프린트 등) 

 

3) CPU (Center Processing Unit) : 중앙처리장치

우리가 입력한 명령어의 처리를 담당하는 부품

 

메모리

엔디안 (Endian)

Bit가 저장되는 방식을 이야기하며, 다른 시스템으로 데이터를 전송할 때 이를 염두에 두어야 한다.

Endian은 저장되는 방식에 따라 Big EndianLittle Endian으로 구분된다.

 

Big Endian 첫 번째 바이트가 MSB (Most Significant Bit) 에 위치
Little Endian 첫 번째 바이트가 LSB (Least Significant Bit)에 위치

 

 

메모리 계층 구조 (Memory Hierarchy)

 

메모리에는 여러 종류가 있으며, 이에 따른 계층도가 있다.

상위에 위치할 수록 접근 빈도 수가 높으며 속도가 빠르지만 비싸고 용량이 작다.

결국 돈 때문에 나누어 짐

 

CPU & Register CPU가 요청을 처리하는데 필요한 데이터를 일시적으로 Register에서 저장
CPU는 Register랑 놀아요
Cache 자주 사용하는 메모리 저장
Main Memory 메인 메모리
Disk Cache 하드디스크에 내장된 작은 메모리 (디스크에 입출력되는 데이터를 저장)
Hard Disk 저장 장치

 

 

입력과 출력 (I/O)

입력 : 컴퓨터에 데이터를 입력

출력 : 컴퓨터에서 원하는 데이터를 출력

 

 

중앙처리장치 (CPU)

중앙 처리 장치는 실제 계산을 처리하는 컴퓨터 부품이다.

 

- 산수 논리 장치 ( ALU / Arithmetic Logic Unit )

- 레지스터 ( Register )

- 제어장치 ( Control Unit )

 

산수 논리 장치 ( ALU )

산술 계산, 불리언 대수 등 기타 연산을 사용하는 방법을 알고 있는 장치.

피연산자, 연산 코드, 명령코드 를 받아 결과와 조건 코드를 산출한다.

 

레지스터 ( Register )

CPU가 사용하는 메모리. 

 

제어장치 ( Control Unit )

실행 장치 ( Execution Unit ) 라고도 한다.

메모리에서 명령코드와 피연산자들을 가져와 ALU에게 어떤 연산을 수행할지 알려주고 결과를 메모리에 돌려준다.

나머지 부품을 제어.

 

프로그램 저장 방식 컴퓨터 ( Stored-Program Computer ) : 명령코드가 메모리에 저장되는 방식

프로그램 카운터 ( Program Counter ) : 명령코드를 가져오는 특별한 레지스터

 

 

 

컴퓨터 아키텍처

컴퓨터의 여러 구성요소를 배치하는 방법으로 폰 노이만 구조와 하버드 구조가 있다.

 

 

운영체제 (OS)

하드웨어 자원을 관리해주는 프로그램

 

프로세스 (Process)

프로세스(Process)는 실행중인 프로그램(Program)이다.

프로세스는 프로그램에 사용되는 데이터와 메모리 등의 자원, 스레드(Thread)로 구성된다.

프로세스는 프로그램을 실행하기 위한 여러가지 데이터를 관리하며, 아래와 같이 4가지 영역이 존재한다.

 

1) 코드(Code) : 명령어가 저장되는 공간

2) 데이터(Data) : 정적 데이터가 저장되는 공간

3) 힙(Heap) : 동적 할당 영역

4) 스택(Stack) : 정적 할당 영역

 

스레드(Thread)

스레드(thread)란 프로세스 내에서 실제로 작업을 수행하는 주체를 의미한다.

작업은 스레드가 진행하며 1개의 프로세스는 1개의 스레드를 갖는다. (main Thread)

두 개 이상의 스레드를 가지는 프로세스는 멀티 스레드 프로세스라고 한다.

 

프로세스가 바라보는 메모리 영역

 

스레드끼리는 메모리를 공유한다.

코드, 데이터, 힙을 공유

스택은 각자만의 공간이 있다

 

네트워크

OSI 7 Layer

 

각 Layer마다 통신 프로토콜

 

 

728x90

'Program > Program' 카테고리의 다른 글

드로우 콜(Draw call)과 최적화  (0) 2023.02.09
Rendering Pipeline  (0) 2022.09.08
컴퓨터 언어 체계  (0) 2022.04.19
프로그래밍 개념  (0) 2022.04.06

+ Recent posts