본문 바로가기

멀티프로그래밍2

[운영체제] 2. 컴퓨터 시스템과 운영체제 - (4) 커널과 인터럽트 수업>   📍1. 컴퓨터에서 인터럽트 활용1-1. 인터럽트의 정의✔️프로그램 수행 중 시스템에 예기치 않은 상황이 발생하였음을 CPU에게 알리는 신호✔️하드웨어 인터럽트 ➡️ 비동기적 인터럽트- 외부 장치들이 어떤 상황 발생을 CPU에게 알리는 하드웨어 신호 - 비동기적이란 예정되지 않거나 발생시간을 예측할 수 없는 사건 - CPU는 인터럽트를 수신하면 인터럽트 서비스 루틴 수행✔️소프트웨어 인터럽트 ➡️ 동기적 인터럽트- CPU가 수행하는 프로그램 내부에서 발생함 - 동기적이란 발생 시점이 프로그램의 일정한 지점이기 때문 - 트랩(trap)이라고 하며, 시스템 호출과 예외(exception)가 있음 - 하드웨어 인터럽트를 수신한 것과 동일하게 처리 1-2. 컴퓨터에서 인터럽트 활용마우스를 움직이거나 .. 2025. 4. 9.
[운영체제] 1. 운영체제 개요 - (2) 운영체제 유형, (3) 운영체제 구조 수업>  📍1. 운영체제 유형 -  멀티프로그래밍 운영체제1-1. 멀티프로그래밍 운영체제 정의✔️ 여러 프로그램을 메모리에 올려놓고 동시에 처리하는 방식 ✔️ 주요 목적은 CPU 활용률을 최대화하기 위함e.g.) 멀티프로그래밍 기법으로 3개의 프로그램이 수행되는 패턴   1-2. 멀티프로그래밍 도입으로 인한 이슈1️⃣ 큰 메모리 이슈여러 프로그램을 동시에 메모리에 올려놓기 위해서는 큰 메모리 필요 2️⃣ 메모리 할당 및 관리 이슈몇 개의 프로그램을 적재할 건지? 메모리 어디에 적재할 건지? 프로그램당 할당할 메모리 크기는? 3️⃣ 메모리 보호 이슈프로그램이 다른 프로그램의 영역을 침범하지 못하게 막는 방법 필요4️⃣ CPU 스케줄링과 컨텍스트 스위칭- 수행시킬 프로그램 선택하는 스케줄링 필요- 프로그램.. 2025. 4. 9.