Software Courses/Operating System

OS Overview 2

김 정 환 2020. 11. 29. 19:58
반응형

1. 운영체제의 역할

    - User Interface(편리성)

        * GUI : 컴퓨터를 켜면 아이콘이 있고 마우스가 있는 그림 형태

 

    - Resource management(효율성)

        * HW resource : processor, memory, I/O devices

        * SW resource : file, application, message

 

    - Process and Thread management

 

    - System management(시스템 보호)

 

 

 

 

2. 운영체제의 구분

    - 동시 사용자 수

        * Single-user system : 한 명의 사용자만 시스템 사용. Windows

        * Multi-user system : 동시에 여러 사용자들이 시스템 사용. Unix, Linux

 

    - 동시 실행 프로세스 수

        * 단일 작업 : 시스템 내에 하나의 작업(프로세스)만 존재. 한 작업이 끝나고 다른 작업 실행. MS-DOS

        * 다중 작업 : 동시에 여러 작업 수행 가능. Unix, Linux, Windows

 

    - 작업 수행 방식

        * 일괄 처리 시스템(Batch System) : 사용자의 요청 작업을 일정 시간 모아 두었다가 한번에 처리

 

        * 시분할 시스템(Time Sharing System) : 여러 프로그램을 일정 시간으로 분할해서 처리

 

        * 개인 컴퓨터(Personal Computing) : 개인이 시스템 전체 독점

 

        * Parallel Processing Systems : 단일 시스템 내에서 둘 이상의 프로세서 사용.

            + Tightly-coupled System : 둘 이상의 프로세서가 메모리 등의 자원을 공유

 

        * Distributed Processing System : 네트워크를 기반으로 구축된 병렬처리 시스템

            + Loosely-coupled System

            + 예시 : client-server system, P2P

 

        * Real-time system : 작업 처리에 제한된 시간을 갖는 시스템

            + Hard Real-time Task : 제한 시간 안에 무조건 결과를 알려줘야 하는 작업. 원자력 발전소 온도 체크

            + Soft Real-time Task : 제한 시간 안에 무조건 결과를 알려주지 않아도 되는 작업. 동영상 스트리밍

    

 

 

3. 운영체제의 구조

    - 커널(Kernel) : OS의 핵심 부분으로 항상 메모리에 상주. 가장 빈번하게 사용되는 기능들 담담

    - 유틸리티(Utility) : 비상주 프로그램. UI 등 서비스 프로그램

 

    - 단일 구조 : 커널에 모든 것을 넣음

        * 장점

            + 커널 내 모듈 간 직접 통신하여 효율적 자원 관리 및 사용

 

        * 단점

            + 커널의 거대화로 오류 및 수정이 어려움. 마치 한 클래스에 모든 기능 넣는 것과 동일

 

 

    - 계층 구조 : 기능별로 따로 만들어 놓음

        * 장점

            + 모듈화하기 때문에 구현 및 수정이 용이

 

        * 단점

            + 단계를 거치기 때문에 단일 구조 대비 성능 저하

 

 

 

4. 운영체제의 기능

    - 프로세스 관리

        * 프로세스 : 커널에 등록된 실행 단위(실행 중인 프로그램)

        * OS의 프로세스 관리 기능 : 생성/삭제, 자원 할당, 프로세스 간 통신 및 동기화, 교착 상태 해결

   

    - 프로세서(CPU) 관리

        * 프로세스 스케쥴링 : 시스템 내의 프로세스 처리 순서 결정

 

    - 메모리 관리

        * 주기억장치 : 작업을 위한 프로그램 및 데이터를 올려 놓는 공간

        * 메모리 할당 및 회수, 여유 공간 관리, 할당 메모리 영역 접근 보호

 

    - 파일 관리

        * 파일: 논리적 데이터 저장 단위

        * 파일 및 디렉터리 생성 및 삭제

 

    - 입출력 관리

        * OS를 거쳐서 입출력 

 

 

 

본 내용은 한국기술교육대학교 김덕수 교수님의 유튜브 강의를 듣고 정리한 내용입니다.
반응형

'Software Courses > Operating System' 카테고리의 다른 글

Process Synchronization and Mutual Exclusion  (0) 2020.12.02
Process Scheduling  (0) 2020.12.01
Thread 관리  (0) 2020.11.30
Process 관리  (0) 2020.11.30
OS Overview 1  (0) 2020.11.29