본문 바로가기

분류 전체보기266

인터럽트 인터럽트는 다른 프로세스를 수행하기 위해 현재 수행 중인 프로세스를 중단하거나 외부 입력장치에 의해 프로세스가 중단되는 상태이다. 입출력 연산, 하드웨어 실패, 프로그램 오류 등에 의해 발생한다. 컴퓨터에 비상사태(연산 오류, 메모리 보호구역 접근, 입출력 완료 등)가 발생할 때 그 처리를 위해 인터럽트가 필요하다. 하드웨어의 기능에 의해 프로그램의 착오는 정해진 인터럽트 처리 루틴에 의해 복구돼야 한다. 인터럽트 요구를 처리하는 서비스 프로그램의 시작 주소는 다음 수행할 명령어의 번지를 기억하고 있는 레지스터인 프로그램 계수기(PC)에 기억시킨다. 동기 인터럽트 명령어 실행 중 CPU에 의해 처리되는 인터럽트 하나의 명령어가 종료가 된 후 인터럽트가 발생한다. 종류 0으로 나누기 인터럽트 프로세스 내 .. 2024. 1. 28.
프로세스 상태 준비(run): 아직 CPU가 할당되기 전인 상태 실행(ready): 해당 프로세스가 CPU를 차지하고 있는 상태 준비 상태에서 실행 상태로 변하는 것을 디스패치라고 함 할당된 시간만큼 CPU를 사용하고 나면 time runout(할당 시간 종료)이 발생하고 준비 상태로 변함 CPU 사용 중 I/O 작업이 요청되면 보류 상태로 이동한다. 보류(block): 처리 속도가 느린 I/O 작업 중인 상태 I/O 작업이 완료되면 wakeup이 발생하여 준비 상태로 이동한다. 중단된 봉쇄 상태(suspended): 운영체제에 의해 일시적으로 보류상태에서 벗어나는 상태 2024. 1. 28.
프로세스 프로세스는 현재 실행되고 있는 프로그램이다. 보조기억장치(디스크)에 있던 프로그램 파일을 주기억장치(메모리)에 적재하여 CPU가 실행한다. 프로세스에 관한 정보를 담고 있는 자료 구조인 PCB(Process Control block)을 통해 명시된다. CPU가 할당되는 개체로서 디스패치(ready -> run)가 가능한 단위 활동 중인 프로시저이자 실행 중인 프로시저의 제어 궤적 2024. 1. 28.
운영체제 계층 구조 하드웨어 - (마이크로프로그램 - 기계어 - 제어 프로그램(kernel) - 명령어 해석기(shell) - 유틸리티 - 응용 프로그램) - 사용자 운영 계층 마이크로프로그램: 하드웨어 기본 동작을 제어하는 작은 명령어인 '마이크로 명령어'의 조합으로 만들어진 프로그램 기계어: 마이크로프로그램을 체계적으로 동작시키기 위한 명령어 형식 ex) 어셈블리어, C 언어 등 제어 프로그램(kernel, 커널): 컴퓨터의 전반적인 동작을 제어할 수 있는 프로그램. ex) CPU 관리 프로그램, 메모리 관리 프로그램 셸에 의해 동작함 제어 프로그램 중 항상 실행 중인 것 명령어 해석기(shell, 셸): 사용자에 의해 명령이 입력되면 명령을 해석하여 제어 프로그램(커널)을 동작시키는 프로그램 유틸리티: 운영체제의 서비.. 2024. 1. 28.
728x90