본문 바로가기
42seoul

[born2beroot] 컴퓨터 구조

by ohojee 2023. 2. 19.

컴퓨터

|— 하드웨어

|— 소프트웨어

|— 응용 프로그램

|— OS

  • 커널과 시스템 프로그램으로 나뉨
    • 커널(Kernel)
      • 운영체제의 핵심부, 컴퓨터 자원을 사용할 수 있게 해주는 자원관리자
      • 컴퓨터 자원(CPU, 메모리, 파일, 네트워크, 입출력 장치, etc)들을 관리(물리적, 추상화 자원)
      • 사용자와의 상호작용 지원 x
      • 하나의 하드웨어를 여러 사용자들을 위한 여러 개의 추상화된 객체로 관리
    • 시스템 프로그램 : 쉘, etc
      • 사용자가 컴퓨터에게 전달하는 명령을 해석하는 프로그램
      • 컴퓨터 자원을 관리하는 커널이 사용자와 상호작용을 하지 않기 때문에 커널과 사용자간 다리 역할 수행
      시스템 콜 : 사용자 모드로 실행되는 프로그램이 운영체제 서비스를 제공 받기 위한 요청 → 커널 모드로 전환 → 하드웨어 자원 사용 → 다시 사용자모드로 전환
  • 크게 윈도우(Window)와 리눅스(Linux), 유닉스(Unix)로 나뉨
    • 점유율 : 윈도우 >>> 리눅스 > 유닉스

| Unix | - 유료

  • 주로 금융권에 사용됨
  • 독점적, 폐쇄적 ⇒ 안정성 ⬆️ but, 버그 수정하려면 고쳐줄 때까지 기다려야함
  • 리눅스 대비 전력소모량 ⬆️ | | --- | --- |

| Linux | - 오픈 소스 운영체제(무료)

  • x86
  • 재구성해서 사용 o ⇒ 버그 수정하려면 그냥 수정하면 됨
  • Unix 계승
  • 하드웨어, linux 커널, 사용자 프로세스로 구성됨
    • 하드웨어 : 메모리(RAM), CPU, 입출력장치로 구성
    • linux 커널 : OS의 핵심, 메모리에 상주하며 CPU에 명령을 내리는 소프트웨어
    • 사용자 프로세스(프로세스) : 실행 중인 프로그램으로써 커널이 관리, 사용자 프로세스가 모여 사용자 공간을 구성 |

| Window | - 유료

  • 폐쇄형 소스
  • 많은 프로그램이 백그라운드에서 실행되어 RAM 소모 ⇒ 쓸 수록 느려짐 |

댓글