Computer Science/운영체제

Computer System Overview

조용우 2025. 1. 23. 14:11

OS란 무엇인가?

컴퓨터 시스템 자원(HW)를 효율적으로 관리해서 사용자/응용 프로그램에게 서비스를 제공하는 소프트웨어.

 

컴퓨터 하드웨어 종류

프로세서

CPU

그래픽카드 (GPU)

 

연산처리를 위한 하드웨어

 

메모리

주 기억장치 (SSD, HDD)

보조 기억장치 (RAM, DRAM)

 

저장을 위한 하드웨어

 

주변장치

키보드/마우스

모니터, 프린터

 

그 외 장치

 

프로세서

중앙처리장치 (컴퓨터 두뇌)

- 연산 수행

- 컴퓨터의 모든 장치의 동작 제어

 

CPU

- 레지스터, 연산장치 (데이터 부분)

- 제어장치 (제어 부분)

 

레지스터: 프로세서 내부에 있는 메모리

- 프로세서가 사용할 데이터 저장

- 컴퓨터에서 가장 빠른 메모

 

레지스터의 종류

용도에 따른 분류

전용 레지스터, 범용 레지스터

 

변경 가능 여부에 따른 분류

사용자 가시 레지스터, 사용자 불가시 레지스터

 

저장 정보 종류에 따른 분류

데이터, 주소, 상태 레지스터

 

 

사용자 가시 레지스터

데이터 레지스터: 함수 연산에 필요한 데이터 저장 (값, 문자 등)

주소 레지스터: 주소나 유효주소를 계산하는 데 필요한 주소의 일부분 저장

 

사용자 불가시 레지스터

프로그램 카운터 (PC): 다음에 실행할 명령어의 주소를 보관하는 레지스터

명령어 레지스터 (IR): 현재 실행하는 명령어를 보관하는 레지스터

누산기 (ACC): 데이터를 일시적으로 저장하는 레지스터

메모리 주소 레지스터 (MAR): 프로세서가 참조하려는 데이터의 주소를 명시하여 메모리 접근하는 버퍼 레지스터

메모리 버퍼/데이터 레지스터 (MBR/MDR): 프로세서가 메모리에서 읽거나 메모리에 저장할 데이터 자체를 보관하는 버퍼 레지스터

 

운영체제는 프로세서에게 처리할 작업 할당 및 관리를 담당 - 프로세스 생성 및 관리

프로그램의 프로세서 사용 제어 - 사용시간 관리, 복수 프로그램간 사용 시간 조율

 

메모리

데이터를 저장하는 장치 (기억장치)

- 프로그램(os, 사용자sw), 사용자 데이터 등 저장

 

메모리의 종류

속도 빠름, 용량 적음

 

레지스터

캐시: CPU 내부

메인메모리: DRAM

보조기억장치: HDD

 

속도 느림, 용량 큼

 

주기억장치 (메인 메모리)

- 프로세서가 수행할 프로그램과 데이터 저장

- 디스크 입출력 병목현상 (I/O bottleneck) 해소

Processor <-> Main memory <-> Disk

사이에 메인메모리 두는 이유, CPU와 Disk 간의 속도 차이가 크기 때문에, 중간속도를 가진 메모리를 중간에 두고 사용

 

캐시

- 프로세서 내부에 있는 메모리(L1, L2, L3 캐시). 코어 레지스터와 거리가 멀어질수록 느려짐

- 메인 메모리의 입출력 병목현상 해소

메모리와 CPU간의 성능 차이가 여전히 크기 때문에 그 사이를 메꾸기 위해 사용

 

캐시의 동작

프로세서가 데이터가 필요하면 캐시를 먼저 확인

캐시에 데이터가 존재하면 해당 데이터를 사용 (Cache hit)

캐시에 데이터가 없다면, 메인 메모리에 있는 데이터를 캐시(Cache Block 형태)로 가지고 들어오고, 그 데이터를 프로세서에 전달 (Cache miss)

 

캐시의 크기가 매우 작은데 대략 1~300 kb (L1 캐시) 효과를 발휘할 수 있는 이유 -> 지역성

 

지역성 (Locality)

공간적 지역성 (Spatial locality)

- 참조한 주소와 인접한 주소를 참조하는 특성

 

시간적 지역성 (Temporal locality)

- 한 번 참조한 주소를 곧 다시 참조하는 특성

 

지역성은 캐시 적중률과 밀접한 연관이 있음

 

보조기억 장치

- 프로그램과 데이터를 저장

- 프로세서가 직접 접근 불가 (주변장치)

- 용량이 크고, 가격이 저렴 (HDD, USB, CD/DVD, SD)

 

하드디스크의 20gb 프로그램을 8gb 램에 올려서 접근해야 하는 경우, 가상 메모리를 이용함

 

 

운영체제는 메모리의 할당 및 관리를 담당

- 프로그램의 요청에 따른 메모리 할당 및 회수

- 할당된 메모리 관리

 

운영체제는 가상 메모리 관리

- 가상메모리 생성 및 관리

- 논리주소 -> 물리주소 변환

 

 

시스템 버스

하드웨어들이 데이터 및 신호를 주고받는 물리적인 통로

 

데이터 버스: 프로세서와 메인 메모리, 주변장치 사이에서 데이터 전송

배선 수에 따라 한번에 전송할 수 있는 비트 수(워드)를 결정

 

주소 버스: 프로세서가 시스템의 구성 요소를 식별하는 주소 정보 전송

배선 수에 따라 프로세서와 접속할 수 있는 메인 메모리의 최대 용량 결정

 

제어 버스: 프로세서가 시스템의 구성 요소 제어하는 데 사용

제어 신호로 연산장치의 연산 종류와 메인메모리의 읽기/쓰기 동작 결정

 

 

주변 장치 

운영체제는 장치드라이버 관리

- 주변장치 사용을 위한 인터페이스 제공

 

인터럽트를 관리

- 주변 장치의 요청을 처리함

 

파일 및 디스크 관리

- 파일 생성 및 삭제, 디스크 공간 관리

'Computer Science > 운영체제' 카테고리의 다른 글

2. OS Overview  (0) 2025.02.13