운영체제(OS)의 정의 및 역할

June Lee·2021년 1월 6일
1

운영체제

목록 보기
1/25

운영체제(OS)란?

하드웨어를 감싸고 있는 것(Hardware Encapsulation).
즉 하드웨어와 응용프로그램 간의 인터페이스 역할을 하는 시스템 소프트웨어


커널(Kernel)이란?

운영체제도 소프트웨어의 일종이므로, 부팅이 되면 디스크에 있던 프로그램이 메모리로 올라와서 상주해야 한다. 그러나 운영체제와 같이 큰 소프트웨어의 전체가 메모리에 올라온다면 메모리 공간 낭비가 심하기 때문에, 운영체제의 핵심 부분만이 메모리로 올라와서 상주하는데, 이 부분을 커널이라고 한다.

좁은 의미의 운영체제

커널

넓은 의미의 운영체제

커널 + 시스템 프로세스 + 라이브러리 + Utility Services(컴파일러, Shell,..)


OS의 역할

하드웨어를 숨기고, 유저가 쓰기 좋은 인터페이스를 만들어주는 것

애플리케이션 관점

- 프로그램을 실행하기 위한 실행 환경 제공
- 컴퓨터 시스템의 구성 요소에 대한 추상적 관점 제공

ex. 

 <실체>              <추상적 관점>
프로세서	->	Processes, Threads
메모리 	->	Address Spaces(Virtual Memory)
스토리지	->	Volumes, Directories, Files
I/O 디바이스->	Files
네트워크	->	Files

시스템 관점

- 컴퓨터 시스템의 다양한 자원(CPU, 메모리, 입출력 장치, 큐...)들을 관리
- 이를 위해서 운영체제에는 하드웨어를 추상화 해주는 계층인 디바이스 드라이버가 존재하며, 
다양한 디바이스 드라이버들을 관리하는 기능 또한 운영체제가 맡고 있다.
- Efficiency & Fairness : 자원 관리에서는 효율성과 공평성(성능과 분배) 사이의 중심을 잡는 것이 중요

실행 관점

- 운영체제는 Highly-Concurrent / Time & Event-Driven Software를 가능하게 함
profile
📝 dev wiki

0개의 댓글