참고 : [Course] Operating System (CPA310) - 운영체제 강의
[ 운영체제 1강. 컴퓨터 시스템 개요 ]
HW : CPU, GPU, Memory, HDD/SDD, LAN..
OS ( Operating System, 운영체제 )
- HW (컴퓨터 시스템 자원)를 효율적으로 관리하여, 사용자/응용프로그램에게 서비스를 제공하는 역할을 한다
1. 컴퓨터 하드웨어
- 프로세서 : 계산하는 장비
- CPU, GPU, 응용 전용 처리장치 등
- 메모리
- 주 기억장치
- 보조 기억장치
- ex) DRAM, Disk..
- 주변장치
- 키보드,마우스
- 모니터, 프린터
- 네트워크 모뎀
2. 프로세서
컴퓨터의 두뇌 (중앙 처리 장치)
- 연산 수행
- 컴퓨터의 모든 장치의 동작 제어
CPU는 두 부분으로 구성
- 1) 데이터 부분
- 연산 장치 & 레지스터
- 2) 제어 부분
- 제어 장치
(1) 레지스터
-
“프로세서 내부”에 있는 메모리
( 프로세서가 사용할 데이터 저장 )
-
가장 “빠른” 메모리
레지스터의 종류
- 1) 용도에 따른 분류 :
- 전용 레지스터 / 범용 레지스터
- 2) 사용자가 정보 변경 가능 여부에 따른 분류
- 사용자 가시/불가시 레지스터
- 3) 저장하는 정보 종류에 따른 분류
- 데이터 / 주소 / 상태 레지스터
(2) 운영체제와 프로세스
운영체제는…
- 프로세서에서 처리할 작업 할당&관리 (3장)
- 프로그램의 프로세서 사용 제어
- ex) 여러 프로그램 간 사용 시간 관리/중재
3. 메모리 (Memory)
메모리 : 데이터를 저장하는 장치 (기억 장치)
무엇을 저장?
- 프로그램, 사용자 데이터 등
메모리의 종류
( 1) fast/expensive/small <—-> 4) slow/cheap/big )
- 1) 레지스터
- 2) 캐시(Cache) ( 레지스터보다는 core에서 멀리 떨어짐)
- 3) 메인 메모리 ( ex. DRAM )
- 프로세서가 직접 접근할 수 있는것은 1)~3) 까지
- 4) 보조 기억장치 ( ex. HDD )
(1) 주기억장치 ( Main memory )
- 프로세서가 수행할 프로그램&데이터 저장
- ex) DRAM : huge & cheap
- 디스크 입출력 병목현상 해소 (I/O bottleneck)
- processor에서 disk 사이의 거리가 너무 멀어! 그 중간다리 역할
- 그 중간인 “주 기억장치”에, 데이터를 미리 가져다 놓자!
(2) 캐시 ( Cache )
- Register와 마찬가지로, 프로세서 내부에 있는 메모리
- L1,L2,L3 캐시
- 속도가 빠르지만, 비싸다
- 메인메모리 입출력 병목현상 해소 (I/O bottleneck)
캐시의 동작
- HW적으로 관리됨
- 캐시에 데이터가 있는지 여부에 따라…
- 1) 캐시 히트 ( Cache hit ) : 필요한 데이터 블록이 “캐시 안에 존재 O”
- 빠르게 가져올 수 있어!
- 2) 캐시 미스 ( Cache miss ) : 필요한 데이터 블록이 “캐시 안에 존재 X”
- 메인 메모리까지 가야!
- 1) 캐시 히트 ( Cache hit ) : 필요한 데이터 블록이 “캐시 안에 존재 O”
캐시가 이러한 효과를 가져다 주는 이유는? 지역성
- 공간적 지역성
- 참조한 주소와 인접한 주소를 참조
- 시간적 지역성
- 한번 참조한 주소를, 곧 다시 참조
이러한 지역성이 캐시 적중률 (cache hit ratio)와 밀접!
(3) 보조 기억 장치
ex) HDD, USB, CD/DVD, SD카드…
프로세서가 직접 접근 불가 ( 주변 장치 )
- 주기억 장치를 거쳐서 접근 가능
Cheap & Big
(4) 메모리와 운영체제
운영체제는…
- 메모리를 할당/관리 한다
- 프로그램의 요청에 따라 할당&회수
- 할당된 메모리를 관리
- 가상 메모리 고나리
- 가상 메모리 생성&관리
- 논리 주소를 물리 주소로 변환
4. 시스템 버스
프로세스 & 메인메모리 & 주변장치에 대해 알아봤다.
이 들이 서로 통신을 하기 위해 필요!
이 물리적인 통로가 “시스템 버스” 이다
- 1) 데이터 버스
- 2) 주소 버스
- 3) 제어 버스
5. 주변 장치
프로세서 & 메모리 제외 HW
- 입력 장치 : 키보드/마우스/터치패드..
- 출력 장치 : 모니터/프린터/스피커…
- 저장 장치 : 보조 기억 장치
(1) 주변 장치와 운영 체제
- 장치 드라이버 관리
- Interrupt 처리
- 파일 & 디스크 관리