기본중의 기본인 개념부터 시작해 보자! 프로그램 (Program)이란? 사전적 의미의 프로그램이란 '어떤 작업을 위해 실행 할 수 있는 파일'을 말한다. 프로세스 (Process)란? 사전적 의미의 프로세스란 컴퓨터에서 연속적으로 실행되고 있는 프로그램을 말한다.
매우 오랜만인 이번 CS 포스트는 역시 OS\~~메모리 관리 기법은 크게 연속 메모리 관리와 불연속 메모리 관리로 나뉜다.프로그램 전체가 메모리에 연속적으로 할당되어야 하는 관리 기법고정 분할 기법 : 메모리가 고정된 파티션으로 분할, 내부 단편화 발생동적 분할 기법
포스팅 시작에 앞서서 프로세스와 스레드의 생김새가 어땠더라?: 하나의 프로그램을 여러개의 프로세스로 구성하여 각 프로세스가 병렬적으로 작업을 수행하는 것메모리 침범 문제를 OS 차원에서 해결여러 자식 프로세스 중 하나에 문제가 발생하여도 그 프로세스만 타격, 확산되지
프로그램을 실행하는 도중에 예기치 않은(cpu의 점유를 빼앗기는) 상황이 발생할 경우 작업을 즉시 중단하고, 발생된 상황을 우선 처리한 후 실행중이던 작업으로 복귀하여 처리하는 것ex) 입출력, 우선순위 연산 등의 발생하드웨어 장치가 CPU에게 어떤 사실을 알려주거나
스케줄링, Scheduling > 컴퓨터 시스템의 모든 자원을 효율적으로 사용하기 위한 프로세스 관리 정책 하나의 프로세스가 끝나고 다음으로 수행할 프로세스를 선택할 때, 어떤 프로세스를 선택할지에 대한 기준이 되는 알고리즘을 CPU 스케줄링 알고리즘 이라 함 Sc
운영체제란 시스템의 자원과 동작을 관리하는 소프트웨어 하드웨어를 관리하고 응용 프로그램과 하드웨어 사이에서 인터페이스 역할을 하며 시스템의 동작을 제어하는 시스템 소프트웨어 목적 CPU, 메모리, 디스크 등의 컴퓨터 하드웨어를 효율적으로 관리하는 것 > 즉, 운영
시스템 호출(system call)은 운영 체제의 커널이 제공하는 서비스에 대해, 응용 프로그램의 요청에 따라 커널에 접근하기 위한 인터페이스이다.사용자 프로그램이 디스크 파일을 접근하거나 화면에 결과를 출력하는 등의 작업이 필요한 경우, 즉 사용자 프로그램이 특권 명
Context Switching CPU가 현재 작업중인 프로세스에서 다른 프로세스로 넘어갈 때, 이전의 프로세스 정보를 PCB에 저장하고 새롭게 실행할 프로세스의 정보를 PCB에서 읽어와 레지스터에 적재하는 과정을 말한다. Context 프로세스의 데이터 CPU 레지
IPC 란? IPC는 프로세스들 사이에 서로 데이터를 주고 받는 방식, 즉 프로세스 간의 통신을 의미한다. 각 프로세스는 독립적인 실행 객체이기 때문에 프로세스 간 통신을 하려면 커널이 제공하는 IPC 모델 방식을 사용해야 한다. IPC 의 필요성 프로세스들은 서로
운영체제가 CPU 자원을 어떤 프로세스에게 할당해줄지 그 일정을 짜는 것하나의 프로세스가 끝나고 다음으로 수행할 프로세스를 선택할 때 그 기준이 되는 알고리즘Batch System : 가능하면 많은 일을 수행, 시간 보다는 처리량이 중요Interactive System
Deadlock 이란 시스템 자원에 대한 요구가 뒤엉킨 상태 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황 시스템이 자원을 획득하는 과정 1. 요청 (Request) 프로세스가 시스템에게 특정 자원을 요청하면 시스