정보처리기사

[정보처리기사 요약 11-1] 운영체제(OS)의 개념과 종류 요약(Windows부터 iOS까지)

Hong's_Computer 2026. 3. 2. 16:20
반응형
본문에 오류가 있을 수 있음을 감안하고 봐주시길 바랍니다.
# 문제 풀이 중 오답노트 하면서 나온 내용을 정리한 것

 

운영체제(Operating System, OS): 컴퓨터 시스템의 자원 등을 효율적으로 관리하며 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로 동작하는 시스템 소프트웨어의 일종이다. 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해 주고 운영체제는 프로세스·기억장치·주변장치·파일 등을 관리하는 기능을 수행한다.

  • 운영체제의 종류: Windows, LINUX, UNIX, MacOS, MS-DOS 등
  • 운영체제의 목적
목적 설명
처리 능력(Throughput) 일정 시간 내에 시스템이 처리하는 일의 양
반환 시간(Turn Around Time) 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
사용 가능도(Availability) 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
신뢰도(Reliability) 시스템이 주어진 문제를 정확하게 해결하는 정도
  • 운영체제의 기능: 프로세스(처리기), 기억장치(주기억장치·보조기억장치), 입·출력장치 파일 및 정보 등의 자원을 관리한다. 자원을 효율적으로 관리하기 위해 자원을 스케줄링 기능을 제공하고 사용자와 시스템 간의 편리한 인터페이스를 제공한다. 시스템의 각종 하드웨어와 네트워크를 관리·제어한다. 데이터를 관리하고 데이터 및 자원의 공유 기능을 제공한다.

 

Windows: 1990년대 마이크로소프트(Microsoft)사가 개발한 운영체제이다.

특징 설명
그래픽 사용자 인터페이스(GUI) 키보드로 명령어를 직접 입력하지 않고 마우스로 아이콘이나 메뉴를 선택하여 모든 작업을 수행하는 방식
선점형 멀티태스킹
(Preemptive Multi-Tasking)
동시에 여러 개의 프로그램을 실행하는 멀티태스킹을 하면서 운영체제가 각 작업의 CPU 이용 시간을 제어하고 응용 프로그램 실행중 문제가 발생하면 해당 프로그램을 강제 종료시키고 모든 자원을 반환하는 방식
PnP(자동 감지 기능) 컴퓨터 시스템에 프린터나 사운드 카드 등의 하드웨어를 설치했을 때 해당 하드웨어를 사용하는 데 필요한 시스템 환경을 운영체제가 자동으로 구성해주는 기능
OLE
(Object Linking and Embedding)
다른 여러 응용 프로그램에서 작성된 문자나 그림 등의 개체를 현재 작성 중인 문서에 자유롭게 연결하거나 삽입하여 편집할 수 게 하는 기능
255자의 긴 파일명 \, /, *, ?, ", <>, |를 제외한 모든 문자 및 공백을 사용하여 최대 255자까지 파일 이름을 지정할 수 있음
Single-User 시스템(과거 버전에 한함) 컴퓨터 한 대를 한 사람이 독점해서 사용함
  • NTFS 파일 시스템: FAT 또는 FAT32에 비해 성능, 보안, 안정성 면에서 뛰어나다. 대용량 볼륨에 효율적, 자동 압축 및 안정성, 저용량 볼륨에서의 속도 저하

 

UNIX: 1960년대 AT&T 벨(Bell) 연구소, MIT, General Electric이 공동 개발한 운영체제이다. 시분할 시스템을 위해 설계된 대화식 운영체제이며 초기에는 소스가 공개되어 개방형 시스템의 기틀을 마련했다. 대부분 C언어로 작성되어 있어 이식성이 높으며 장치·프로세스 간의 호환성이 높다. 다중 사용자(Multi-User)·다중 작업(Multi-Tasking)을 지원하며 트리 구조의 파일 시스템을 갖는다. 트리 구조의 파일 시스템을 갖는다. 크기가 작고 이해하기 쉽다.

구성 요소 설명
커널(Kernel) · 하드웨어를 보호하고 프로그램과 하드웨어 간의 인터페이스 역할을 담당함
· 컴퓨터가 부팅될 때 주기억장치에 적재된 후 상주하면서 실행된다.
· UNIX의 가장 핵심적인 부분임
· 프로세스(CPU 스케줄링) 관리, 기억장치(Memory) 관리, 파일 관리, 입·출력 관리, 프로세스간 통신, 데이터 전송 및 변환 등 여러 가지 기능을 수행함
쉘(Shell) · 사용자의 명령어를 인식하여 프로그램을 호출하고 명령을 수행하는 명령어 해석기임 → 커널로 전달
· 시스템과 사용자 간의 인터페이스를 담당함(종류: Bourne Shell, C Shell, Korn Shell)
· 반복적인 명령 프로그램을 만드는 프로그래밍 기능을 제공한다.
· 초기화 파일을 이용해 사용자 환경을 설정하는 기능을 제공한다.
유틸리티 프로그램
(Utility Program)
· 일반 사용자가 작성한 응용 프로그램을 처리하 데 사용함
· DOS에서의 외부 명령어에  해당됨(종류: Editor, Compiler, Interpreter, Debugger 등)

        - Syslog: 시스템 관리자가 송·수신한 메시지나 명령, 시스템 이벤트 발생 내용, 시스템 작업과 관련된 정보 등을 저장한 자료의 집합

 

 

TCP WRAPPER(TCP 래퍼): 외부 컴퓨터가 접속될 때 접속 인가 여부를 점검하여 접근을 통제하는 보안 유틸리티, 인가된 경우에는 접속을 허용하고 인가되지 않은(그 반대의) 경우에는 접속을 거부함

 

 

LINUX: 1991년 리누스 토발즈가 UNIX를 바탕으로(유사하게) 개발한 운영체제이다. 프로그램 소스 코드가 무료로 공개되어 있어 프로그래머가 원하는 기능을 추가할 수 있다 다양한 플랫폼에 설치하여 사용이 가능하며 재배포가 가능하다. UNIX와 완벽하게 호환되며 대부분의 특징이 UNIX와 동일하다.

  • export: 기존 환경 변수의 값을 변경하거나 새로운 환경 변수를 설정할 때 사용하는 명령어, 변수를 export 시키면 전역(Global)변수처럼 되어 끝까지 기억된다.

 

MacOS: 2001년 애플(Apple)사가 UNIX를 기반으로 새롭게 출시한 운영체제이다. 애플사에서 생산하는 제품에서만 사용이 가능하며 드라이버 설치 및 install과 uninstall의 과정이 단순하다.

 

Android: 구글(Google)사에서 개발한 리눅스 커널 기반의 개방형 모바일 운영체제이다. 모든 코드가 공개된 개방형 소프트웨어이며 자바와 코틀린으로 애플리케이션을 작성한다. 스마트폰 등의 휴대용 장치에서 주로 사용된다.

 

iOS: 애플(Apple)사에서 개발한 유닉스 기반의 모바일 운영체제이다.

 

 

운영체제 운용 기법

  • 시분할 처리 시스템(Time Sharing Processing System): 일정 시간 단위(Time Slice / Quantum)로 CPU를 한 사용자에서 다음 사용자로 신속하게 전환함으로써 각각의 사용자들은 실제로 자신만이 컴퓨터를 사용하고 있는 것으로 여기는 시스템.(주로 라운드 로빈(Round Robin) 스케줄링 방식을 사용하며 대화형(Interactive) 시스템에 적합함)
  • 일괄 처리 시스템(Batch Processing System): 초기의 컴퓨터 시스템에서 사용된 형태로 일정량 또는 일정 기간 동안 데이터를 모아서 한꺼번에 처리하는 방식.(시스템의 전체 처리량(Throughput)은 높일 수 있지만 작업 반환 시간(Turnaround Time)이 길어 사용자와의 상호작용이 불가능함)
  • 실시간 처리 시스템(Real Time Processing System): 데이터 발생 즉시 또는 데이터 처리 요구가 있는 즉시 처리하여 결과를 산출하는 방식.(정해진 엄격한 시간(Deadline) 내에 반드시 처리가 완료되어야 하며 은행 업무, 우주선 비행, 제어 시스템 등에 주로 사용됨)
  • 다중 프로그래밍 시스템(Multi Programming System): 하나의 CPU와 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식.(CPU가 입출력(I/O)을 기다리는 동안 다른 프로세스를 실행하여 CPU의 유휴 시간(Idle Time)을 최소화하는 것이 목적임)
반응형