수업/운영체제

운영체제 2주차

ksy0314 2023. 3. 14. 00:40
  • 운영체제란
    • 하드웨어를 제어하기 위한 소프트웨어
    • 응용 프로그램이 하드웨어와 상호작용 할 수 있도록 해주는 소프트웨어

  • 운영 체제와 응용 프로그램
    • 운영체제는 응용 프로그램에게 응용 프로그래밍 인터페이스를 제공
    • 이를 통해 응용 프로그램은 시스템 자원을 사용
    • 운영체제는 시스템 자원에 대한 잘못된 사용과 접근을 막아줌
    • 운영체제가 응용 프로그램 개발에 좋은 환경을 제공할수록 시장 장악 가능성 높아짐

  • 운영체제 환경
    • 범용 컴퓨터, 임베디드 시스템, 실시간 시스템, 가상 머신 등

  • 운영체제의 구성 요소와 목표
    • 구성 요소
      • 프로세스 스케줄러
      • 메모리 관리자
      • 입출력 관리자
      • 프로세스 간 통신 관리자
      • 파일 시스템 관리자
    • 목표
      • 효율성, 견고함, 규모 확장성(성능 측면), 확장성(능력의 다양화), 이식성, 보안, 상호 작용성, 사용성

  • 운영체제 아키텍처
    • 모놀리식 아키텍처
      • 한 커널에 모든 컴포넌트 포함, 시스템 접근에 큰 제약이 없음
      • 높은 성능, 낮은 보안, 오류, 유지보수
    • 계층적 아키텍처
      • 유사한 기능을 계층으로 구분, 각 계층은 바로 상위, 하위 계층과 상호작용
      • 보안, 소프트웨어 검증, 디버깅 능력이 상대적으로 높음
      • 직접 접근이 안되는 만큼 성능 저하
    • 마이크로커널 아키텍처 
      • 필요 기능만 제공, 규모가 작아 규모 확장성, 이식성, 확장성, 안전성, 신뢰성 좋음
      • 커널과 사용자 수준간 통신이 많아 성능 저하 가능성 있음
    • 네트워크 운영체제
      • 네트워크를 통해 다른 컴퓨터에 자원 접근 가능
    • 분산 운영체제
      • 한대 이상에 있는 자원을 관리하는 운영체제