CPU 스케쥴링 CPU는 한 번에 하나의 프로세스만 실행 가능하므로 CPU 이용률을 극대화하기 위해 어떤 프로세스에 CPU를 할당할지 결정하는 작업 CPU 스케쥴러 CPU스케쥴러는 메모리에 있는 프로세스들 중 어떤 프로세스를 실행할지 선택하고 CPU에 할당해주는 역할을 함 스케쥴링 발생 상황 실행(running) 상태에서 대기(waiting) 상태로 전환 실행(running) 상태에서 준비(ready) 상태로 전환 대기(waiting) 상태에서 준비(ready) 상태로 전환 종료(terminated)될 때 스케쥴링 종류 비선점형 스케쥴링 (non-preemption) 필요한 문맥 교환만 일어나므로 오버 헤드가 상대적으로 적지만 프로세스 배치에 따라 효율성 차이가 크게 남 프로세스가 CPU를 점유하고 있다..
CPU의 동작 과정 보조기억장치에서 저장된 프로그램을 읽거나, 입력장치에서 입력받은 데이터를 주기억장치에서 읽음 주기억장치에서 읽어온 데이터를 CPU가 읽고 처리한 후 다시 주기억장치로 보낸 후 저장 주기억장치는 연산된 데이터를 출력장치에 보내거나 보조기억장치에 저장 제어장치는 일련의 1~3 과정에서 명령어가 순서대로 잘 실행되도록 제어하는 역할 수행 CPU의 명령어 연산코드 : 실행할 연산을 나타냄 연산 기능 : 산술연산과 논리연산 수행 제어 기능 : 조건 분기와 무조건 분기 등을 사용해 명령어의 실행 순서를 제어 데이터 전달 기능 : 레지스터 - 레지스터, 레지스터 - 주기억장치 사이에데이터 전달 입출력 기능 : 프로그램과 데이터를 주기억장치에 전달하고, 연산 결과는 출력장치에 전달 피연산자 주소 :..
컴퓨터의 기본 구조 중앙처리장치(CPU) : 프로그램 실행과 데이터처리 라는 중추적인 기능 수행 기억장치 주기억장치(Main Memory) : 고속으로 액세스 가능, 일시적 저장장치 보조기억장치 : 저속으로 액세스, 디스트, 자기 테이프 등이 해당 입출력장치 : 사용자와 컴퓨터 간의 대화를 위한 도구 중앙처리장치(CPU) 명령을 해독하고, 산술논리연산이나 데이터 처리를 실행하는 장치, 프로그램의 실행과 데이터를 처리하는 중추적 기능의 수행 담당 제어장치 기억장치에서 명령을 읽어 해독 다음에 실행될 명령어 주소를 계산 연산의 수행 순서 결정 명령어 실행에 필요한 제어 신호를 발생 연산장치 : 산술연산과 논리연산 수행, 레지스터 존재(임시 기억 장소) 버스 : 중앙처리장치, 메모리, I/O 장치 등과 상호 ..
운영체제 제한된 컴퓨터 하드웨어 자원을 효율적으로 관리하여 사용자나 응용 프로그램에게 컴퓨터 자원의 인터페이스를 제공하는 시스템 소프트웨어, 컴퓨터 자원을 제어하고 사용정책을 구현하여 사용자에게 스케쥴링을 통해 자원 할당 추상화 가상화 관리화 운영체제의 주요 기능 1. 프로세스 관리 사용자 프로세스와 시스템 프로세스의 생성과 폐기 프로세스의 중지와 재수행 프로세스 통신과 동기화를 위한 기법 제공 교착상태 방지를 위한 기법 제공 2. 주기억장치 관리 기억장치를 사용하고 있는 공간과 사용자를 추적 관리 기억공간을 점유할 프로세스 결정 기억공간을 할당하고 회수 3. 파일 관리 파일의 생성과 폐기 디렉토리 생성 및 폐기 파일과 디렉토리 관리를 위한 프리미티브 제공 보조 기억장치에 있는 파일을 운영체제가 이용할 ..