-
1. 운영 체제(Operating System)란?Computer Science/OS 2019. 7. 6. 10:46SMALL
1. 운영체제란?
운영 체제는 하드웨어와 소프트웨어를 연결해주는 계층으로
하드웨어 바로 위의 계층에 해당한다.
운영 체제는 소프트웨어의 일종으로,
소프트웨어는 실행되기 위해 메모리 위에 올라가야 하고
따라서 운영 체제도 메모리 위에 올라가 있어야 동작할 수 있다.
한정적인 메모리 안에서 운영 체제 전체가 메모리에 올라가 있다면
메모리의 공간을 비효율적으로 사용하게 된다.
이런 문제를 방지하기 위해 운영체제는 항상 필요한 부분만 메모리에 올리게 된다.
이렇게 항상 메모리에 올라가 있는 운영체제의 일부분을 커널(kernel)이라 부른다.
2. 운영체제가 하는 일
운영 체제는 크게 두 가지 일을 한다.
1. 사용자의 편의 측면: 사용자가 컴퓨터를 사용할 때 편리하게 사용할 수 있는 환경을 제공
2. 하드웨어 관리의 측면: 하드웨어의 여러 자원(resource)을 효율적으로 관리
이 중 운영 체제는 하드웨어의 효율적인 관리가 더 중요하다고 볼 수 있는데,
하드웨어 자원을 사용자와 프로그램 사이에 효율적으로 분배 가능하도록 관리하는 것이 중요하다.
이외에도 여러 사용자의 사용이나 악성 프로그램에 대한 보안역할 또한 맡고 있다.
3. 운영체제의 종류
운영 체제는 또한 크게 두 가지로 나눌 수 있다.
1. 단일 작업용 운영 체제(Single tasking OS): 한 번에 하나의 프로그램만 실행할 수 있는 운영 체제
2. 다중 작업용 운영 체제(Multi tasking OS): 동시에 여러 프로그램을 실행할 수 있는 운영 체제
이렇게 두 개로 나눠지긴 하지만, 컴퓨터 내의 CPU는 보통 하나를 가지고 있기 때문에
매 순간 CPU는 하나의 프로그램만 실행한다는 점은 같다.
그렇지만, 다중 작업용 운영체제와 단일 작업용 운영체제를 구분지을 수 있는 이유는
CPU가 짧은 시간 마다 여러 프로그램을 번갈아 실행시키기 때문에
사용자 입장에서는 여러 프로그램이 동시에 수행되는 것 처럼 보인다.
이렇게 여러 프로그램들을 CPU가 조금씩 나눠쓰는 것을 시분할 시스템(Time sharing system)이라 한다.
CPU와는 다르게 메모리는 여러 프로그램들의 메모리 공간을 조금씩 나눠 사용할 수 있는데,
이를 다중 프로그래밍 시스템(Multi-programming system)이라 부른다.
다중 프로그래밍 시스템은 다중 처리기 시스템(Multi-processor system)과는 다른데
다중 처리기 시스템은 메모리를 나눈다는 의미가 아닌,
한 대의 컴퓨터에 여러 개의 CPU가 설치되어 있는 것이다.
운영체제의 분류 (그 외)
이 밖에도, 운영 체제의 분류는
다중 사용자의 동시 지원 여부에 따른 분류(서버 or Dos), 작업을 처리하는 방식에 따른 분류(일괄처리 or 시분할 처리),
실시간(Real-time) 운영 체제의 분류(경성 실시간 or 연성 실시간) 등 여러 방법으로 분류할 수 있다.
4. 운영체제 실제 예시
대표적인 운영체제로는 MS 윈도우즈와 유닉스가 있다.
MS 윈도우즈는 마이크로소프트 사에서 개발한 것으로 일반 사용자가 사용했을 때, 가장 편리한 장점이 있고,
안정성과 호환성이 떨어진다는 단점이 있다.
유닉스는 벨 연구소에서 개발한 것으로 운영 체제의 소스코드가 공개되어 있어 학문적인 측면에서 다양하게 활용되고 있다. 또한, 운영 체제 자체 커널의 크기가 작아 메모리 활용을 효율적으로 할 수 있다.
MS 윈도우즈 보다는 일반 사용자의 사용이 어렵다는 점이 있었지만,
최근 리눅스의 개발로 많은 사람들이 사용하고 있다.
[참고 문헌]
1. 반효경, 이화여자대학교출판부, 2008, "운영 체제와 정보 기술의 원리"
2. 위키백과, "운영 체제", https://ko.wikipedia.org/wiki/%EC%9A%B4%EC%98%81_%EC%B2%B4%EC%A0%9C
LIST'Computer Science > OS' 카테고리의 다른 글
2. 컴퓨터의 동작 원리 (0) 2019.07.07 댓글