~2023.02/운영체제

    02_컴퓨터 시스템의 동작 원리

    목차 1. 컴퓨터 시스템의 구조 2. CPU 연산과 I/O 연산 3. 인터럽트의 일반적 기능 4. 인터럽트 핸들링 5. 입출력 구조 6. DMA 7. 저장장치의 구조 8. 저장장치의 계층 구조 9. 하드웨어의 보안 10. 메모리 보안 11. CPU 보호 12. 시스템 콜을 이용한 입출력 수행 1. 컴퓨터 시스템의 구조 그림 2. CPU 연산과 I/O 연산 2.1 로컬버퍼 입출력 장치와 메인 CPU는 동시 수행이 가능하다. 각 장치마다 이를 제어하기 위해 설치된 장치 컨트롤러는 장치로부터 들어오고 나가는 데이터를 임시로 저장하기 위한 작은 메모리를 가지고 있는데, 이를 로컬버퍼(local buffer)라고 한다. 디스크나 키보드 등에서 데이터를 읽어오는 경우, 우선 로컬버퍼에 데이터가 임시로 저장된 후 메..

    01_운영체제 개요

    목차 1. 운영체제의 정의 2. 운영체제의 기능 3. 운영체제의 분류 4. 운영체제의 예 5. 운영체제의 자원 관리 기능 1. 운영체제의 정의 1.1 운영체제(operating system)란? 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 좁은 의미의 운영체제 운영체제 자체도 하나의 소프트웨어로서 전원이 켜짐과 동시에 메모리에 올라간다. 하지만 운영체제처럼 규모가 큰 프로그램이 모두 메모리에 올라간다면 한정된 메모리 공간의 낭비가 심할 것이다. 따라서 운영체제 중 항상 필요한 부분만을 전원이 켜짐과 동시에 메모리에 올려놓고 그렇지 않은 부분을 필요할 때 메모리로 올려서 사용하게 된다. 이때 메모리에 상주하는 운영체제의 부분을 커널(..

    00_책 선정과 목차 소개

    책 선정 운영체제와 정보기술의 원리, 반효경 지음 목차 소개 1장 컴퓨터 및 정보 기술의 역사 컴퓨터의 선사시대 근대적 컴퓨터의 역사 현대의 컴퓨터 2장 운영체제 개요 운영체제의 정의 운영체제의 기능 운영체제의 분류 운영체제의 예 운영체제의 자원 관리 기능 3장. 컴퓨터 시스템 동작 원리 컴퓨터 시스템의 구조 CPU 연산과 I/O 연산 인터럽트의 일반적 기능 인터럽트 핸들링 입출력 구조 DMA 저장장치의 구조 저장장치의 계층 구조 하드웨어의 보안 메모리 보안 CPU 보호 시스템 콜을 이용한 입출력 수행 4장 프로그램의 구조와 실행 프로그램의 구조와 인터럽트 컴퓨터 시스템의 작동 개요 프로그램의 실행 사용자 프로그램이 사용하는 함수 인터럽트 시스템 콜 프로세스의 두 가지 실행 상태 5장 프로세스 관리 프로..

    [운영체제]03_프로세스 관리#3(작성중)

    목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 프로세스 생성 Copy-on-write (COW) 부모 프로세스(Parent process)가 자식 프로세스(Chidren process) 생성 프로세스의 트리(계층 구조) 형성 프로세스는 자원을 필요로 함 운영체제로부터 받는다. 부모와 공유한다. 자원의 공유 부모와 자식이 모든 자원을 공유하는 모델 일부를 공유하는 모델 전혀 공유하지 않는 모델 수행(Execution) 부모와 자식은 공존하며 수행되는 모델 자식이 종료(terminate)될 때까지 부모가 기다리는(wait) 모델 주소공간(Address space) 자식은 부모의 공간을 복사함 (binar..

    [운영체제]03_프로세스 관리#2

    [운영체제]03_프로세스 관리#2

    목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 Thread "A thread(or lightweight process) is a basic unit of CPU utilization" - thread는 cpu를 수행하는 단위이다. Thread의 구성 program counter register set stack space Thread가 동료 Thread와 공유하는 부분(=task) code section data section OS resources 전통적인 개념의 heavyweight process는 하나의 thread를 가지고 있는 task로 볼 수 있다. 다중 thread로 구성된 task 구조..

    [운영체제]03_프로세스 관리#1

    [운영체제]03_프로세스 관리#1

    목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 프로세스의 개념 "Process is a program in execution" - 프로세스는 실행중인 프로그램이다. 프로세스의 문맥 CPU의 수행 상태를 나타내는 하드웨어 문맥 Program Counter 각종 register 프로세스의 주소 공간 code, data, stack 프로세스 관련 커널 자료 구조 PCB(Process Control Block) Kernel stack 프로세스의 상태 프로세스는 상태(state)가 변경되며 수행된다. Running CPU를 잡고 instruction을 수행중인 상태 Ready CPU를 기다리는 상태(메모리 등..

    [운영체제]02_컴퓨터시스템의 구조

    [운영체제]02_컴퓨터시스템의 구조

    목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 컴퓨터시스템 구조 Mode bit 사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하기 위한 보호 장치가 필요 Mode bit을 통해 하드웨어적으로 두 가지 모드의 operation 지원 1 사용자 모드 : 사용자 프로그램 수행 0 모니터 모드 : OS 코드 수행 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능한 '특권명령'으로 규정 Interrupt나 Exception 발생시 하드웨어가 mode bit을 0으로 바꿈 사용자 프로그램에게 CPU를 넘기기 전에 mode bit을 1로 셋팅 Timer 타이머..

    [운영체제]01_운영체제 개요

    [운영체제]01_운영체제 개요

    목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 운영체제란 무엇인가? 운영체제(Operating System, Os)란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 협의의 운영체제(커널) 운영체제의 핵심 부분으로 메모리에 상주하는 부분 광의의 운영체제 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영체제의 목적 1) 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행 2) 컴퓨터 시스템..

    [운영체제]00_들어가면서

    목차 운영체제 개요 컴퓨터시스템의 구조 프로세스 관리 CPU 스케줄링 병행 제어 데드락 메모리 관리 가상 메모리 파일 시스템 입출력 시스템 디스크 관리 운영체제란 무엇인가? 운영체제(Operating System. OS)란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 운영체제의 목표 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행 컴퓨터 시스템의 자원을 효율적으로 관리 ★ 프로세서, 기억장치, 입출력 장치 등의 효율적 관리