CS/OS

    [운영체제] 교착상태

    [운영체제] 교착상태

    운영체제 강의(이화여대,반효경 교수님)를 듣고 정리한 내용입니다. The Deadlock Problem Deadlock 일련의 프로세스들이 서로가 가진 자원을 기다리며 block된 상태 Resource(자원) 하드웨어, 소프트웨어 등을 포함하는 개념 ex) I/O 디바이스, CPU cycle, memory space, semaphore 등 프로세스가 자원을 사용하는 절차 Request,Allocate,Use, Release Deadlock Example 1 시스템에 2개의 tape drive가 있다. 프로세스 P1과 P2 각각이 하나의 tape drive를 보유한 채 다른 하나를 기다리고 있다. Deadlock Example 2 Binary semaphores A and B P0 : P(A) -> P(B..

    [운영체제] 프로세스 동기화

    [운영체제] 프로세스 동기화

    운영체제 강의(이화여대,반효경 교수님)를 듣고 정리한 내용입니다. 데이터의 접근 데이터를 읽고 연산하는 과정에서 누가 먼저 읽고 연산했는지 순서에 따라 결과가 달라짐. Race Condition 저장소를 한곳에서만 실행하면 문제가 없음. 두개의 프로세스에서 동시에 데이터에 접근해서 데이터를 연산하면 연산 결과가 의도치 않게 나올 수 있음. -> 레이스 컨디션 이런 상황을 조율하는 방법이 필요 race condition 이 일어날 수 있는 상황 저장소를 공유하는 실행박스가 여럿 있는 경우 Race Contion 가능성이 있음. CPU가 여러개 있는 시스템 공유 메모리를 사용하는 프로세스들 커널 내부 데이터를 접근하는 루틴 (커널모드 수행 중 인터럽트로 커널모드 다른 루팅 실행시) OS에서의 Race Con..

    [운영체제] 프로세스 관리

    [운영체제] 프로세스 관리

    운영체제 강의(이화여대,반효경 교수님)를 듣고 정리한 내용입니다. 프로세스 관리 #1 프로세스 생성 (Process Creation) 부모 프로세스가 자식 프로세스 생성 프로세스의 트리(계층 구조)형성 프로세스는 자원을 필요로 함 운영체제로 부터 받는다 부모와 공유한다 자원의 공유 부모와 자식이 모든 자원을 공유하는 모델 copy on write : 내용이 바뀔 때까진 부모 것을 계속 공유해서 사용하겠다. 일부를 공유하는 모델 전혀 공유하지 않는 모델 (일반적인 모델) 수행(Execution) 부모와 자식은 공존하며 수행되는 모델 자식이 종료(terminate) 될 때 까지 부모가 기다리는(wait) 주소 공간 자식은 부모의 공간을 복사함 (binary and Os data) 프로세스의 문맥을 모두 복사..

    [운영체제] 프로세스

    [운영체제] 프로세스

    운영체제 강의(이화여대,반효경 교수님)를 듣고 정리한 내용입니다. 프로세스 #1 프로세스의 개념 프로세스 : Program in execution , 실행중인 프로그램 프로세스의 문맥(context) CPU 수행 상태를 나타내는 하드웨어 문맥 프로그램 카운터 각종 레지스터 프로세스 주소 공간 code,data,stack 프로세스 관련 커널 자료구조 PCB(Process Control Block) Kernel stack - 프로세스마다 별도로 두고 있음. 프로세스의 현재 상태를 알고 있는것이 프로세스 문맥 , 현재 상태를 규명하기 위해 필요한 것. 실행이 시작 되면 독자적인 주소 공간을 만든다. 프로그램 카운터라는 레지스터가 프로세스의 코드를 가리킨다. 매 순간 프로세스의 코드를 읽어서 레지스터에 값을 넣..

    [운영체제] 운영체제의 개요 및 컴퓨터 시스템의 구조

    [운영체제] 운영체제의 개요 및 컴퓨터 시스템의 구조

    운영체제 강의(이화여대,반효경 교수님)를 듣고 정리한 내용입니다. 1 운영체제 개요 운영 체제란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 좁은 의미의 운영체제 커널 운영체제의 핵심 부분으로 메모리에 상주하는 부분 넓은 의미의 운영체제 메모리에 상주하지 않는 별도의 프로그램들 커널뿐만 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영 체체의 목적 컴퓨터 시스템의 자원을 효율적으로 관리 프로세서, 기억장치, 입출력 장치 등을 효율적으로 관리 사용자간의 형평성 있는 자원분배(형평성) 주어진 자원으로 최대한의 성능을 내도록 (효율성) 사용자 및 운영체제 자신의 보호 프로세스,파일,메시지 등 관리 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 ..