티스토리 뷰

  • 컴퓨터 시스템의 구성
    • 하드웨어
      • CPU, 메모리, 저장장치, 입출력장치, 네트워크장치 등
    • 소프트웨어
      • 응용 소프트웨어, 시스템 소프트웨어
    • 사용자, 응용 소프트웨어, 시스템 소프트웨어, 하드웨어
    • 운영체제
      • 컴퓨터의 하드웨어 자원을 관리하고 컴퓨터 프로그램이 동작하기 위한 서비스를 제공하는 시스템 소프트웨어
  • 운영체제의 역할
    • 컴퓨터 시스템의 운영
      • 컴퓨터시스템의 자원을 제어 및 관리
      • 응용프로그램들의 실행을 도와주는 소프트웨어
    • 사용자 지원
      • 사용자의 명령을 해석하여 실행
      • 사용자와 하드웨어 사이의 매개체 역할수행
  • 컴퓨터 시스템과 운영체제
    • 운영체제가 없던 초기의 컴퓨터 시스템
      • 응용 프로그램 개발자는 하드웨어 제어 방법을 잘 알아야 함
      • 여러 응용 프로그램이 하드웨어를 공유하는 경우 자원 분할이 어려움 
    • 운영체제가 하드웨어와 응용 프로그램 사이에 위치
      • 하드웨어에 대한 제어는 운영체제만 함
      • 응용프로그램은 운영체제를 통해서만 하드웨어 이용
  • CPU의 동작모드
    • 슈퍼바이저 모드(커널모드)
      • 운영체제의 커널이 동작되는 모드
      • 하드웨어를 직접 제어할 수 있는 CPU명령어 사용가능
    • 보호모드(사용자모드)
      • 응용프로그램이 동작되는 모드
      • 하드웨어를 직접 제어할 수 있는 CPU명령어 사용 불가능
    • 시스템 호출
      • 보통은 보호모드에서 사용을하고 필요할 떄 슈퍼바이저 모드로 전환됨
      • 응용 프로그램이 운영체제에게 서비스를 요청하는 메거니즘
      • 시스템호출 -> 보호모드에서 슈퍼바이저 모드로 변경 -> 커널 동작 -> 하드웨어 제어
  • 커널
    • 커널(kernel)
      • 운영체제의 핵심요소
      • 응용프로그램과 하드웨어 수준의 처리 사이의 가교 역할
      • 대표적인 구성방식: 일체형 커널, 마이크로 커널
    • 일체형 커널(monolithic kernel)
      • 운영체제의 모든 서비스가 커널 내에 포함됨
      • 장점
        • 커널 내부 요소들이 서로 효율적으로 상호작용을 할 수 있음
      • 단점
        • 한 요소에 있는 오류로 인해 시스템 전체에 장애가 발생할 수 있음
          • 예) UNIX, Linux 운영체제들
    • 마이크로 커널(microkernel)
      • 운영체제의 대부분의 요소들을 커널 외부로 분리
      • 커널 내에는 메모리 관리, 멀티테스킹, 프로세스간 통신(IPC) 등 최소한의 요소들만 남김
      • 장점
        • 새로운 서비스를 추가하여 운영체제를 확장하기 쉬움
        • 유지보수가 용이하여 안정성이 우수함
      • 단점
        • 커널 외부 요소들 사이는 IPC를 통해야만 하므로 성능 저하가 발생함
  • 운영체제의 구성
    • 컴퓨터 시스템의 자원의 성격에 따라 구분
      • 프로세스 관리자, 메모리 관리자, 파일 관리자, 장치 관리자
    • 프로세스 관리자
      • 프로세스를 생성, 삭제, CPU할당을 위한 스케쥴 결정
      • 프로세스의 상태를 관리하며 상태 전이를 처리
    • 메모리 관리자
      • 메모리(주기억장치) 공간에 대한 요구의 유효성 체크
      • 메모리 할당 및 회수
      • 메모리 공간 보호
    • 장치 관리자
      • 컴퓨터 시스템의 모든 장치를 관리
      • 시스템의 장치를 할당, 작동시작, 반환
    • 파일 관리자
      • 컴퓨터 시스템의 모든 파일을 관리
      • 파일의 접근제한 관리
      • 파일을 열어 자원을 할당하거나 파일을 닫아 자원을 회수
  • 운영체제의 유형
    • 응답시간의 속도, 데이터 입력의 방식에 따라 분류
      • 일괄처리(batch processing) 운영체제
        • 작업을 모아서 처리
        • 사용자와 상호작용 없이 순차적으로 실행
        • 효율성 평가: 처리량(주어진 시간안에 처리된 작업의 수), 반환시간(작업의 생성 시점부터 종료 시점까지의 소요시간)
      • 대화형(interactive) 운영체제
        • 시분할 운영체제라고도 함
        • 일괄처리 운영체제보다 빠르지만 실시간 운영체제보다는 느린 응답시간(요청한 시점부터 반응이 시작되는 시점까지의 소요시간)
        • 이용자에게 즉각적인 피드백을 제공
      • 실시간(real-time) 운영체제
        • 가장 빠른 응답시간
        • 처리의 결과가 현재의 결정에 영향을 주는 환경에서 사용
        • 우주선 비행 시스템, 미사일제어, 증권거래 관리시스템, 은행 입출금 시스템 등에 사용
      • 하이브리드(hybrid) 운영체제
        • 일괄처리 운영체제와 대화형 운영체제의 결합
        • 이용자는 터미널을 통해 접속하고 빠른 응답시간을 얻음
        • 대화형 작업이 많이 않을 경우 백그라운드에서 배치 프로그램 실행
        • 현재 사용되고 있는 대부분의 대형 컴퓨터 시스템은 하이브리드 운영체제 
    • 운영체제의 역사
      • 1940년대와 1950년대
        • 1940년대: 초기 전자식 디지털 컴퓨터
          • 운영체제가 존재하지 않음
          • 기계적 스위치에 의해 작동
        • 1950년대: 단순 순차처리 및 단일흐름 일괄처리
          • 한번에 오직 하나의 작업만을 수행
          • 최초의 운영체제 등장(ICM 701용)
        • 1960년대: 멀티프로그래밍
          • 멀티프로그래밍(한 컴퓨터에서 여러프로그램을 진행하지만 CPU를 한번에 하나만 사용할 수 있음), 시분할 처리개념
          • 다중 대화식 사용자 지원
        • 1970년대: 멀티모드 시분할
          • 일괄처리, 시분할처리, 실시간 처리를 지원하는 멀티모드 시분할의 보편화
          • 근거리지역 네트워크(LAN)의 실용화
          • 정보보호 및 보안문제의 증대로 암호화의 중요성 대두
        • 1980년대: 분산 네트워크
          • 운영체제 기능이 하드웨어 자체에 포함된 펌웨어 개념의 대두
          • 2개 이상의 프로세서를 이용하는 멀티프로세서 환경
          • 네트워크의 대두와 함께 클아이언트/서버모델확산
        • 1990년대: 병렬처리 및 분산처리
          • 순차처리를 벗어나 분산 및 병렬처리발전
          • 그래픽 사용자 인터페이스의 강화
          • 선점형 멀티태스킹, 멀티쓰레딩, 가상 메모리의 보편화
        • 2000년대 이후: 모바일 및 임베디드 운영체제
          • 시스템은 고속화, 고기능화, 경량화 방향으로 발전
          • 클라우드 환경의 운영체제
          • 64비트 CPU에 호환되는 64비트용 운영체제
          • PDA,PMP, 스마트폰, 태블릿 등의 모바일 장치 대중화로 모바일 운영체제 보편화

'운영체제' 카테고리의 다른 글

[운영체제] 교착상태  (0) 2021.04.07
[운영체제] 병행프로세스 (2)  (0) 2021.04.02
[운영체제] 병행프로세스  (0) 2021.03.30
[운영체제] 스케줄링 알고리즘  (0) 2021.03.24
[운영체제] 프로세스 개요  (0) 2021.03.17
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함