본문 바로가기

cs지식/운영체제

운영체제란?

728x90

✔️ 운영체제란?

운영체제(OS, Operating System)는 컴퓨터 하드웨어와 소프트웨어 자원을 관리하고, 사용자와 컴퓨터 간의 인터페이스를 제공하는 시스템 소프트웨어이다. 운영체제는 컴퓨터 시스템의 기본적인 기능을 수행하며, 응용 프로그램이 효율적으로 실행될 수 있도록 환경을 제공한다.

 

 

✔️ 운영체제의 주요 기능

  1. 프로세스 관리(Process Management):
    • 프로세스 생성, 스케줄링, 종료 등을 관리한다.
    • CPU 스케줄링 알고리즘을 사용하여 프로세스의 효율적인 실행을 보장한다.
    • 예: 라운드 로빈(Round Robin), 우선순위 스케줄링(Priority Scheduling)
  2. 메모리 관리(Memory Management):
    • 메모리 할당 및 해제, 가상 메모리 관리 등을 수행한다.
    • 프로그램이 실행될 때 필요한 메모리 공간을 할당하고, 더 이상 필요하지 않을 때 해제한다.
    • 예: 페이징(Paging), 세그멘테이션(Segmentation)
  3. 파일 시스템 관리(File System Management):
    • 파일과 디렉토리를 생성, 삭제, 읽기, 쓰기 등의 작업을 관리한다.
    • 파일의 저장, 접근, 보호 등을 수행한다.
    • 예: FAT, NTFS, ext4
  4. 입출력 관리(I/O Management):
    • 입출력 장치와의 데이터 전송을 관리한다.
    • 디바이스 드라이버를 통해 하드웨어와 상호작용한다.
    • 예: 디스크 드라이버, 프린터 드라이버
  5. 보안 및 권한 관리(Security and Access Control):
    • 시스템의 무결성과 기밀성을 보호한다.
    • 사용자 인증, 접근 제어 등을 통해 시스템 자원을 보호한다.
    • 예: 사용자 계정, 암호화, 방화벽
  6. 사용자 인터페이스(User Interface):
    • 사용자가 컴퓨터 시스템과 상호작용할 수 있도록 인터페이스를 제공한다.
    • 명령어 인터페이스(CLI)와 그래픽 사용자 인터페이스(GUI)를 포함한다.
    • 예: Windows Explorer, GNOME, Command Prompt

 

 

✔️ 운영체제의 유형

  1. 단일 사용자 및 단일 작업 운영체제(Single-User Single-Task OS):
    • 한 번에 한 사용자만 사용하고, 하나의 작업만 수행할 수 있다.
    • 예: MS-DOS
  2. 단일 사용자 및 다중 작업 운영체제(Single-User Multi-Tasking OS):
    • 한 사용자가 동시에 여러 작업을 수행할 수 있다.
    • 예: Windows, macOS
  3. 다중 사용자 운영체제(Multi-User OS):
    • 여러 사용자가 동시에 시스템 자원을 공유하며 사용할 수 있다.
    • 예: UNIX, Linux
  4. 실시간 운영체제(Real-Time OS):
    • 정해진 시간 내에 작업을 처리해야 하는 시스템을 위해 설계되었다.
    • 예: VxWorks, RTLinux
  5. 분산 운영체제(Distributed OS):
    • 여러 컴퓨터가 네트워크를 통해 자원을 공유하며 하나의 시스템처럼 동작한다.
    • 예: Apache Hadoop, Google File System

 

 

✔️ 주요 운영체제

  1. Windows:
    • 마이크로소프트가 개발한 운영체제 시리즈이다.
    • GUI 중심의 인터페이스를 제공하며, 개인용 컴퓨터에서 널리 사용된다.
  2. maxOS:
    • 애플이 개발한 운영체제로, Mac 컴퓨터에 사용된다.
    • 유닉스 기반의 안정성과 고유의 GUI를 제공한다.
  3. Linux:
    • 오픈 소스 운영체제로, 다양한 배포판이 존재한다.
    • 서버, 데스크톱, 임베디드 시스템 등 다양한 환경에서 사용된다.
    • 예: Ubuntu, Fedora, Debian
  4. UNIX:
    • 멀티유저, 멀티태스킹 기능을 갖춘 강력한 운영체제이다.
    • 주로 서버 및 고성능 컴퓨터에서 사용된다.
    • 예: AIX, HP-UX, Solaris
  5. Android:
    • 구글이 개발한 모바일 운영체제로, 스마트폰과 태블릿에서 주로 사용된다.
    • 리눅스 커널을 기반으로 한다.
  6. iOS:
    • 애플이 개발한 모바일 운영체제로, 아이폰과 아이패드에서 사용된다.
    • macOS와 유사한 구조를 가지고 있다.

 

 

✔️ 운영체제의 구조

운영체제는 여러 계층으로 구성되어 있으며, 각 계층은 특정 기능을 담당한다.

  1. 커널(Kernel):
    • 운영체제의 핵심 부분으로, 하드웨어와 직접 상호작용한다.
    • 프로세스 관리, 메모리 관리, 파일 시스템 관리 등의 기본 기능을 제공한다.
  2. 시스템 호출(System Calls):
    • 응용 프로그램이 운영체제의 서비스를 요청하는 인터페이스이다.
    • 커널 기능을 사용할 수 있도록 한다.
  3. 명령어 해석기(Command Interpreter):
    • 사용자가 입력한 명령어를 해석하고 실행한다.
    • CLI와 GUI를 통해 사용자와 상호작용한다.

 

728x90