[컴퓨터구조/운영체제] 컴퓨터 전공 수업 10분으로 압축 (컴퓨터구조 + 운영체제)
인프런/기술노트 - 컴퓨터 구조부터 클라우드 빅데이터까지 / 진로 고민, 취업 상담
# 폰노이만 구조
- CPU ↔ Memory ↔ DISK
- 하드웨어(CPU, Memory, Disk) ↔ I/O
# CPU
- ALU + 레지스터
- ALU: 수학적 산술 연산을 하는 것이 있음
- 레지스터: 메모리에 있는 명령들이 올라와서 계산을 통해 연산을 하게 됨
- 캐시메모리: 임시저장공간
# Memory
- 저장공간
- Memory에 컴퓨터 내 프로그램을 모두 올릴 수 없다
- 어떤 프로세스에 어떤 데이터를 적재시킬지가 관리 대상 → 메모리 관리
# DISK
- 저장소
- 파일에 얼마나 빠르게 접근할 것인가 → 디스크 관리
# I/O
- 키보드 마우스 모니터와 같은 입출력 장치
# 컴파일
- 우리가 작성한 코드(with python, C++, Java …)는 컴퓨터가 바로 이해할 수 없음
- 컴파일을 통해 코드가 컴퓨터에서 실행할 수 있는 .exe, .dll 확장자를 가진 프로그램으로 바뀌는 것임
- dll: dynamic linked library
- 이렇게 만들어진 프로그램은 DISK에 저장됨
# 실행파일(.exe)의 구성 및 실행
- 코드 + 리소스
- 명령어들 중에 일부 처리하려고하는 명령어(코드) 및 참고할 수 있게 도와주는 리소스가 메모리에 올라가게 되는 것이며, 메모리는 이것들을 다시 CPU로 보내고 이후 CPU에서 처리함
# process
- DISK에서 Memory로 코드 및 리소스가 올라가는 순간
- 즉, 프로세스는 프로그램이 실행되고 있는 것이다
- 프로세서도 있는데 이는 CPU를 가리키는 말이다
- 프로세스는 한개의 프로그램만 실행되는 것이 아니라, 여러 개의 프로그램을 동시에 띄울 수 있으므로 프로세스의 개수는 여러 개이다
# processor
- 위에서 동시에 프로그램 여러개를 띄울 수 있다고 했지만, 이것은 사용자가 바라보는 입장이고 실제로는 모든 프로세스에게 한번씩 실행할 기회를 주는 것이며 기회를 주는 시간이 짧아 사람들 입장에서는 그 간극을 느끼지 못한다 ⇒ 시간을 나누어 기회를 주는 것을 시분할이라고 한다
- 요즘은 멀티코어를 사용하기 때문에 프로세서도 여러개이다
- 스케줄링: 프로세스에게 얼마만큼의 시간을 줄 지 그리고 많은 프로세스에게 우선 순위를 매기며 관리하는 것
- 선점형 스케줄링: 우선 순위가 높은 프로세스가 먼저 선점하는 방식
- FCFS: First Come Fisrt Service
- etc..
# Cost와 Speed
- CPU 쪽으로 갈수록 cost는 높고, Speed도 빠르다
- DISK 쪽으로 갈수록 cost가 낮고, Speed도 느리다
# OS
- 메모리 관리, 디스크 관리 등을 담당
- 하드웨어(CPU, 메모리, 디스크)가 잘 동작되게 함
- 여러가지 프로그램들이 동시에 최적의 성능을 낼 수 있게 메모리나 CPU를 사용해서 프로그램을 구동시키는 역할
'Study > Computer&Operating System' 카테고리의 다른 글
[컴퓨터구조/운영체제] CPU속도가 Hz(헤르쯔)인 진짜 이유 (feat. 컴퓨터 구조) (0) | 2023.02.21 |
---|---|
[컴퓨터구조/운영체제] 컴퓨터구조 운영체제 클라우드 30분만에 이해하기 (0) | 2023.02.19 |
[OS] Chapter 09. 가상 메모리의 관리 (0) | 2022.06.04 |
[OS] Chapter 08. 가상 메모리 (0) | 2022.06.03 |
[OS] Chapter 07. 메모리 관리 (0) | 2022.06.02 |