본문 바로가기
반응형

운체36

Ch07. 물리 메모리 관리_01)메모리 관리의 개요 교재를 참고하였습니다. 메모리 (주기억장치) 관리 메모리 관리는 프로세스들을 위해 메모리 할당, 제거, 보호하는 활동 디스크에 있는 프로그램을 실행하려면 먼저 메모리에 적재 후 메모리 관리자(관리장치)가 예약된 메모리 할당해 주는 것 다중 프로그래밍 시스템에서 여러 프로세스가 메모리에 상주할 수 있도록 운영체제가 동적으로 메모리 세분화 동일한 조건이면 메모리 용량이 512KB인 컴퓨터보다 1GB인 컴퓨터의 작업속도가 더 빠르지만, 4GB 메모리의 컴퓨터와 16GB 메모리의 컴퓨터는 체감 속도가 비슷함 이처럼 메모리의 용량을 늘리면 작업속도가 빨라지지만 어느 수준 이상이 되면 그 차이가 작아짐 CPU 작업공간이 메모리이기 때문에 메모리 관리는 컴퓨터 성능에 막대한 영향이 있음 메모리 관리 메모리 관리의 복.. 2023. 5. 13.
Ch06. 교착 상태_02)교착 상태 필요 조건 교재를 참고하였습니다. 교착 상태 필요조건 교착 상태 필요 조건 다음 4가지 조건이 모두 발생해야만 교착상태 발생(필요조건) 4가지 중 단 한 가지라도 만족하지 않으면 교착상태가 발생하지 않음 상호 배제(mutual exclusion) : 한 프로세스가 사용하는 자원은 다른 프로세스와 공유할 수 없는 배타적인 자원이어야 함 비선점(non-preemptive) : 한 프로세스가 사용 중인 자원은 중간에 다른 프로세스가 빼앗을 수 없는 비선점 자원이어야 함 점유와 대기(hold and wait) : 프로세스가 어떤 자원을 할당받은 상태에서 다른 자원을 기다리는 상태여야 함 원형 대기(circular wait) : 점유와 대기를 하는 프로세스 간의 관계가 원을 이루어야 함 교착 상태 필요 조건 분석 상호 배제.. 2023. 4. 28.
Ch06. 교착 상태_01)교착 상태의 개요 교재를 참고하였습니다. 교착 상태의 정의 교착 상태(dead lock) 2개 이상의 프로세스가 다른 프로세스의 작업이 끝나기만 기다리며 작업을 더 이상 진행하지 못하는 상태 시스템 내에 임계구역이 존재하면 프로세스 간 상호배제를 보장해야 함 운영체제가 상호배제를 보장하기 위해 잠금을 사용하다 보면 작업이 더 이상 진행되지 않는 교착상태에 빠짐 교착상태란 무엇인가? 이를 해결하는 방법에 대해 학습 아사 상태와 차이점 아사 현상 : 운영체제가 잘못된 정책을 사용하여 특정 프로세스의 작업이 지연되는 문제 교착 상태 : 여러 프로세스가 작업을 진행하다 자연 발생적으로 일어나는 문제 운영체제는 감시를 하다가 교착상태를 감지하면 강제적으로 해결해야 함 교착 상태의 발생 시스템에서 교착상태는 시스템 자원, 공유변수(.. 2023. 4. 19.
[심화]Ch05. 프로세스 동기화_04)파일, 파이프, 소켓 프로그래밍 교재를 참고하였습니다. 파일 순차 파일 아무리 큰 파일이라도 파일 내의 데이터는 개념적으로 한 줄로 저장됨 파일 기술자 open() 함수로 파일을 열면 파일 기술자 fd를 얻음 파일 기술자는 파일 접근 권한 외에 현재 파일의 어느 위치를 읽고 있는지에 대한 정보도 보관 처음 파일이 열리면 파일 기술자는 맨 앞에 위치 파일에서 파일 기술자는 단 하나이고, 읽기를 하든 쓰기를 하든 파일 기술자는 계속 전진 파일을 이용한 통신 read( )와 write( ) 함수가 파일 기술자를 공유하며 통신 파이프 파이프를 이용한 통신 파이프는 파일 기술자를 fd[2]와 같이 2개의 원소를 가진 배열로 정의 배열에서 원소 하나는 읽기용이고 하나는 쓰기용으로 사용 네트워킹 소켓을 이용한 네트워킹 클라이언트 쪽의 통신 절차 처.. 2023. 4. 19.
Ch05. 프로세스 동기화_02)공유 자원과 임계구역 교재를 참고하였습니다. 공유 자원과 임계구역 : 여러 프로세스가 한정된 자원을 가지고 프로세스가 공동으로 작업할 때 발생할 수 있는 문제가 있음 공유 자원의 접근 공유 자원 (shared resource) 여러 프로세스가 공동으로 이용하는 변수, 메모리, 파일 등을 말함 공동으로 이용되기 때문에 누가 언제 데이터를 읽거나 쓰느냐에 따라 그 결과가 달라질 수 있음 이 때문에 원치 않는 문제 발생하기도 함 경쟁 조건 2개 이상의 프로세스가 공유 자원을 병행적으로 읽거나 쓰는 상황 경쟁 조건이 발생하면 공유 자원 접근 순서에 따라 실행 결과가 달라질 수 있음 공유 자원의 접근 예 [그림 5-10]은 두 프로세스가 공유 자원인 전역 변수를 이용해 작업을 하는 예시임. 프로세스 P1은 예금 10만원 확인 후 10.. 2023. 4. 18.
[심화]Ch04. CPU 스케줄링 _05)인터럽트 처리 교재를 참고하였습니다. 인터럽트의 개념 폴링 입출력을 요청하면 운영체제가 주기적으로 입출력장치를 직접 확인해서 처리하는 방식 인터럽트 이벤트 드리븐 방식과 마찬가지로 입출력을 요청하고 입출력이 완료되면 이벤트를 발생시켜 알림 동기적 인터럽트와 비동기적 인터럽트 동기적 인터럽트 프로세스가 실행 중인 명령어로 인해 발생 동기적 인터럽트의 종류 프로그램상의 문제 때문에 발생하는 인터럽트(예: 다른 사용자의 메모리 영역에 접근하는 경우, 오버플로나 언더플로에 의해 발생하는 경우 등) 컴퓨터 작업자가 의도적으로 프로세스를 중단하기 위해 발생시킨 인터럽트(예: [Ctrl]+[C]) 입출력장치 같은 주변장치의 조작에 의한 인터럽트 산술 연산 중 발생하는 인터럽트(예: 어떤 수를 0으로 나눔) 비동기적 인터럽트 하드디.. 2023. 4. 4.
반응형