내 잡다한 노트

챕터1. 운영체제의 개요 본문

운영체제

챕터1. 운영체제의 개요

peanutwalnut 2022. 7. 2. 22:18

1. 운영체제 소개


- 운영체제의 필요성
운영체제가 있는 기계는 새로운 기능의 추가나 성능의 변경이 가능해  성능 및 효율성의 향상을 꾀할 수 있다.


운영체제의 역할 <ㅡ> 운영체제의 효과
자원관리 <ㅡ> 효율성 
- 여러 응용프로그램과 인터페이스들을 효율적으로 사용하기 위해 메모리 관리
키보드, 네트워크카드, 사운드카드 등의 자원을 적당한 순서로 배분하고 적절한 시점에 자원을 회수한다. 

자원보호 <ㅡ> 안정성
사용자가 운영체제를 사용하지만 운영체제는 사용자가 직접 하드웨어에 접근하는 것을 막는다.
막지 않는다면 바이러스가 하드웨어에 거짓된 정보를 저장하거나 정보를 파괴해 심각한 보안문제를 야기하기 때문에
대신 자원을 이용할 수 있는 여러가지 방법을 제공하는데 인터페이스를 통해 사용자의 편의를 도모한다.

하드웨어 인터페이스 제공 <ㅡ> 확장성
키보드, 마우스 뿐만 아니라 프린터 같은 하드웨어와 연결해 쓸 수 있게 돕고 다양한 인터페이스 기기들과 상관없이
어떤 기기들도 사용할 수 있게끔 컴퓨터와 연결시켜준다.
운영체제는 다양한 시스템 자원을 추가하거나 제거하기가 편리해야 함.

사용자 인터페이스 제공 <ㅡ> 편리성
사용자가 운영체제를 편리하게 사용하도록 지원하기 위한 것.
운영체제는 인터페이스, 시스템호출, 커널, 드라이버로 구성돼있다.
인터페이스는 커널에 사용자의 명령을 전달하고 그 결과를 사용자에게 보여준다.

시스템 호출
커널과 소프트웨어를 연결시키는 명령어 함수들. 응용프로그램에서 하드웨어 자원에 접근하기 위한 유일한 방법.
커널에서 접근을 제어하기위해 응용프로그램은 무조건 커널을 거쳐가도록 한다. 이를 통해 커널은 자원을 보호할 수 있게 된다. 응용프로그램과 커널의 인터페이스.

커널
프로세스 관리, 메모리 관리, 저장장치 관리, 파일 시스템 관리와 같은 운영체제의 핵심적인 기능을 모아놓은 것.
사용자가 하드웨어에 직접적인 접근을 막아 보안을 향상시켜준다.

드라이버
운영체제에서 모든 하드웨어를 지원해줄 수 없으니 만드는 회사에서 호환이 되도록 만든 프로그램
커널과 하드웨어의 인터페이스는 드라이버가 담당한다.

- 커널의 기능을 어떻게 구현하는가에 따라
단일형 구조 커널
초창기의 운영체제 구조. MS-DOS, 초기의 유닉스 운영체제
모든 핵심 기능을 구현하는 모듈이 하나로 묶여있다. 그래서 작은 결함이 시스템 전체로 확산될 수 있다.

계층형 구조 커널
비슷한 기능을 가진 모듈을 묶어서 하나의 계층으로 만들고 계층 간의 통신을 통해 운영체제를 구현하는 방식.

가상머신
기존의 운영체제 위에 가상머신을 만들고 그 위에서 응용 프로그램이 작동하게 만드는 것. 주로 자바의 가상머신이 있음.
이를 통해 윈도우 운영체제에서 리눅스를 설치할 필요 없이 사용할 수 있다.
호환성이 높지만 대신 속도가 느리다.