나만의 학습 기록

최종 목적은 기술 블로그💩

백엔드 공부

OS에 대한 전반적인 지식 (1) - 운영체제에 대해

밈밍민믹 2026. 3. 30. 16:06

오랜만에 작성하는 블로그 글이네요! 여태 면접 준비 + 생일로 바쁜 하루를 지내서 블로그에 글 쓸 시간이 없더라고요...그래도 공부는 계속해왔으니 오늘부터 다시 열심히 써보도록 하겠습니다!

OS에 대한 내용을 백엔드에서 중요하므로 여러 편에 나눠서 작성할 것 같습니다. 또한 CS에도 겹치는 내용들이 존재할 예정으로 부분적으로만 간략하게 설명하도록 하겠습니다.


운영체제란?

  • Operating System의 약자로 OS라 부른다.
  • 사용자의 하드웨어, 시스템 리소스를 제어하고 프로그램에 대한 일반적 서비스를 지원하는 시스템 소프트웨어이다.
  • 사용자의 편리성과 자원의 효율적 사용을 위해 이용된다.
  • 컴퓨터 운영체제로 대표적으로는 Windows, Linux, Mac OS 등이 존재하며, 모바일 운영체제로는 Android OS, iOS, Windows Phone 등이 존재한다.

 

운영체제의 기능

  1. 프로세스 관리
    • 프로세스는 실행 중인 프로그램을 나타내며, 운영체제는 프로세스의 생성, 스케줄링, 종료 등을 관리한다.
  2. 메모리 관리
    • 시스템의 메모리를 효과적으로 할당하고 관리하여 여러 프로세스가 동시에 실행될 수 있도록 한다.
  3. 파일 시스템 관리
    • 파일을 생성, 읽기, 쓰기, 삭제하고 파일의 구조를 관리하여 데이터를 저장하고 검색할 수 있도록 한다.
  4. 입출력 관리
    • 입출력 장치와의 상호 작용을 관리하며, 효율적인 데이터 전송을 지원한다.
  5. 장치 드라이버 관리
    • 하드웨어와 통신하기 위한 드라이버를 관리하고 제공한다.
  6. 보안 및 권한 관리
    • 시스템 자원에 대한 접근 권한을 관리하고, 보안 정책을 시행하여 시스템을 안전하게 유지한다.
  7. 네트워킹
    • 네트워크 기능을 제공하여 여러 컴퓨터 간에 통신을 가능하게 한다.
  8. 시스템 호출 인터페이스
    • 응용 프로그램이 운영체제의 서비스를 사용할 수 있도록 하는 인터페이스를 제공한다.

 

운영체제 유형

  1. 일괄 처리 시스템(Batch Processing System)
    • 일정량이 될 때까지 모아서 한번에 작업을 처리한다.
    • 우선순위 설정이 어려우며, 프로세서와 메인 메모리의 활용도가 떨어진다.
  2. 다중 프로그래밍 시스템(Multi-Programming System)
    • 여러 프로그램을 메모리에 적재하고 A작업이 입출력 동작 등으로 프로세서를 사용하지 않을 경우 B작업이 프로세서를 사용한다.
    • 메모리 관리가 복잡해진다.
  3. 실시간 처리 시스템(Real Time Processing System)
    • 필요한 계산처리를 즉석에서 바로 처리하고 결과를 보낸다.
    • 처리 시간이 단축되고 비용이 절감되며, 우주선, 교통 제어, 레이더 추적기 등에 활용된다.
  4. 시분할 시스템(Time Sharing System)
    • 여러 사용자에게 짧은 간격으로 프로세서를 번갈아가며 할당한다.
    • 라운드 로빈 방식이라고도 하며 신뢰성과 보안에 문제가 생길 수 있다.
  5. 분산 처리 시스템(Distributed Processing System)
    • 분산된 데이터 저장소와 CPU 들을 네트워크로 연결하여 통신하면서 동시에 일을 처리한다.
  6. 다중 처리 시스템(Multi-Processing System)
    • 컴퓨터 버스, 클럭, 메모리 등을 공유하는 둘 이상의 프로세서를 사용한다.
    • 신뢰성이 증가하고 결함 허용에 유리하지만 성능 저하의 원인이 된다. 

 

운영체제의 일반적인 작동 원리

부팅 시 운영체제가 실행되는 과정

1. CPU가 ON되고, CPU는 ROM에 있는 BIOS데이터를 읽어온다.

2. BIOS는 POST(Power on self test)를 진행하여 하드웨어의 정상적인 작동을 검사한다.

3. POST에 이상이 없으면 BIOS는 부트스트랩을 실행하여 부팅 정보를 메모리로 읽어 온다.

  • 부트스트랩 : Disk의 MBR(Dist 첫번째 섹터)에 저장된 부팅 정보를 RAM으로 읽어온다.

4. 부트로더는 Disk에 있는 운영체제 코드를 메모리로 읽어온다.

5. 읽어 온 운영체제 명령에 의해 CPU는 첫 프로세스(Demon)를 즉시 실행한다. 이후 인터럽트가 발생하면 CPU는 각종 작업을 처리한다.

 

 

여기까지 OS의 전반적인 지식 중 운영체제에 대해 학습하였습니다. 아마 6편 정도 나눌 것으로 예상되며, 다음에는 터미널과 기본 명령어에 대해서 학습해보도록 하겠습니다.