운영체제란?
운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하여, 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모양입니다. 운영체제는 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용프로그램이 유용한 작업을 할 수 있도록 환경을 제공해 줍니다.
운영체제 = 인터페이스 환경제공 + 자원 관리
운영체제의 필요성
운영체제도 하나의 SW이고 처음부터 모든 기계가 운영체제가 있었던 것은 아니다. 하지만 점점 컴퓨터의 구성이 많아지고 처리할 것들이 복잡해 지면서 복잡한 작업 환경에 규칙이 없으면 기계를 망가뜨릴 수 있기 때문에 등장한 것이 운영체제이다.
운영체제의 역할 (크게 4가지로 나눌수 있다)
자원관리
- 운영체제는 한정된 자원을 효율적으로 관리할 의무가 있다. 컴퓨터에는 많은 응용프로그램들이 설치될 수 있고 이 응용프로그램들은 한정된 컴퓨터의 자원들을 필요로 하게 된다. 따라서 운영체제가 중간 입장에서 자원들을 알맞는 순서로 응용프로그램들에게 분배하고 다시 회수하는 작업을 수행한다.
자원 보호
- 메모리같은 자원은 의도치 않게 조금이라도 손실되거나 변형되면 프로그램에 오류가 발생할 수 있고 아예 실행되지 않기도 한다. 악용할 가능성을 장지하기 위해 이로부터 자원을 보호할 의무가 있다. 이를 위해 사용자들이 컴퓨터의 메모리를 직접 접근하는 것을 일절 차단하고 운영체제 스스로 관리한다. 대신 사용자에게는 컴퓨터의 자원들을 사용할 수 있게 인터페이스를 제공 하기도 한다.
- 커널모드 유저모드
유저모드: 유저가 접근할 수 있는 영역을 제한적으로 두고, 프로그램 자원에 함부로 침범하지 못하는 모드이다. , CPU 내부의 모드비트가 1
커널모드: 모든 자원( 드라이버, 메모리, CPU 등)에 접근, 명령을 할 수 있다. CPU 내부의 모드비트가 0
하드웨어 인터페이스 제공
마우스, 키보드, 모니터 등을 제조사에 상관없이 사용자가 사용할 수 있게 호환성을 보장하는 역할이다. 제조사는 자신들의 제품을 판매하면 운영체제는 드라이버라는 하드웨어 인터페이스를 설치해 어떤 제품이던지 사용자에게 plug & play 할 수 있게 한다.
사용자 인터페이스 제공
이 중 우리가 가장 많이 접하는 것이 GUI(Graphical User Interface)다. 컴퓨터를 키면 보이는 화면이 GUI인데, 운영체제마다 조금씩 다른 것을 알 수 있다. 마우스 포인터나 폴더 인터페이스, 작업 표시줄, 스마트폰의 터치스크린 등 다양한 사용자 인터페이스들을 제공한다.
출처:
https://bnzn2426.tistory.com/40
https://kosaf04pyh.tistory.com/196
'CS스터디 > 운영체제' 카테고리의 다른 글
인터럽트 (0) | 2022.01.11 |
---|---|
프로세스 주소 공간 (0) | 2022.01.11 |
프로세스와 스레드 (0) | 2022.01.07 |
CPU 스케줄러 (0) | 2022.01.07 |
스케줄러(단기,중기,장기) (0) | 2022.01.07 |