운영체제
운영체제는 애플리케이션(줄여서 앱)에게 지금 당신이 사용하고 있는 컴퓨터, 노트북 컴퓨터, 스마트폰, 스마트 TV, 테블릿 PC 등을 사용할 수 있게 해주는 것이다.
즉, 지금 이 문서를 보는데 필수불가결한 프로그램의 왕인 것이다.
구조[편집 | 원본 편집]
운영체제의 심장은 커널이라는 프로그램이며 만약 커널에 문제가 생긴다면 블루스크린, 레드스크린, 블랙스크린 등 커널 패닉이라는 현상을 일으킨다.[1]
커널은 프로그램이 실행되는 단위인 프로세스의 실행 시간 비중을 결정하는 프로세스 스케줄링, 가상 메모리 등의 메모리(RAM) 관리, 연산 자원 공유 관리 체계 및 입출력 제어로 구성되어 있다.
커널 외에 사용자와 상호작용을 하고 사람이 내린 명령을 커널로 전달하는 쉘(Shell), 장치의 제어를 담당하는 디바이스 드라이버 및 파일 관리용 파일 시스템 구현 코드 등이 있다. 이것들이 쉘 정도를 제외하고 통째로 합본 형태로 존재하면 모놀리식 커널(Monolithic kernel), 디바이스 드라이버 등이 커널과 완전히 분리된 프로세스로 존재하면 마이크로커널(Micro-kenel)이라고 한다. 극단적으로는 프로세스, 메모리 영역, 파일 데이터 등을 전부 공유 가능한 객체로 보고 자원 관리 기능만 남긴 엑소커널(Exo-kernel) 같은 괴상한 분류도 있으나, 실험적인 부류의 커널이라 대중적으로 쓰이지 않는다. 리눅스가 대표적인 모놀리식 커널이며, 마이크로커널은 QNX 같이 덜 유명한 조립식 구조의 운영체제에서 쓰이는 편이다. 윈도우즈와 macOS의 경우에는 일부 디바이스 드라이버 정도만 커널에서 분리한 혼합형 커널이다.
종류[편집 | 원본 편집]
PC[편집 | 원본 편집]
모바일 및 임베디드[편집 | 원본 편집]
그외[편집 | 원본 편집]
점유율[편집 | 원본 편집]
현재 세계에서 가장 많이 쓰이는 PC 운영체제는 윈도우로 사실상 독식을 했다.
하지만 임베디드 전자기기와 서버용으로는 윈도우보다 커스텀이 쉬운 리눅스 계열 운영체제가 압도적으로 더 많이 쓰인다. 그래서 IT기기를 통틀어 종합적으로는 리눅스계 운영체제의 판정승이다. 물론 극단적으로 사양을 낮추면 리눅스로도 어림 없고, RTOS라고 극도로 단순화하여 실시간 데이터 처리를 가능하게 한 전용 운영체제 종류를 쓴다.