이 글은 운영체제 공룡책 강의를 듣고 정리한 내용입니다.
Multi Processing
-
CPU가 1개가 아니라 여러 개다.
-
즉 registers와 cache를
독립적으로 가진 CPU가 1개의 메모리에 연결이 되어있다.
-
예를 들어 슈퍼 컴퓨터에는 CPU가 900만 장이 있다.
-
ref : 19:00
Multi Core
-
CPU를 각각 구성하는 건 비용이 많이 드니까
CPU 칩 안에 registers와 cache를 갖고있는
Core만 따로 회로로 구성하자는 아이디어이다.
-
즉 같은 프로세서 칩 1개에서
여러개의 코어가 붙어있는 구조이다.
-
그래서 실제로 컴퓨터에는 CPU 칩을 1개만 꽂지만
그 안에 코어가 여러 개 있는 구조이다.
ex) 코어가 2개라면 듀얼 코어
ex) 코어가 4개라면 쿼드 코어
-
ref : 20:00
Multi Tasking & Multi Programming
-
메모리에 여러 프로그램을 올려 사용하는 구조를
Multi Tasking = Multi Programming 이라 부른다.
-
메모리에 여러 개의 프로세스를 동시에 올리고
CPU는 시분할로 여러 프로세스를 실행시킨다.
(= Concurrency하게 실행시킨다.)
그래서 CPU 사용 효율을 높일 수 있다.
-
정리하자면 다음과 같다.
하나의 메모리에 동시에 여러 개 프로세스를 올린다.
(= Multi Programming)
Multi Programming 된 메모리를 대상으로
CPU가 시분할로 여러 프로세스를 빠르게 처리한다.
(= Multi Tasking, Concurrency)
- ref : 21:13