먼저 컴퓨터는 크게 하드웨어, 소프트웨어, 펌웨어 이렇게 3가지로 나뉜다.컴퓨터 시스템이 작동하는데 필요한 물리적 구성요소로 손으로 만질수 있다.입력, 연산, 제어, 기억, 출력기능을 구현한다.중앙처리장치(CPU), 주기억장치(메모리(RAM,ROM)), 보조기억장치(H
컴퓨터 시스템의 자원들을 효율적으로 관리사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다.사용자와 컴퓨터 하드웨어 간의 인터페이스시스템 소프트웨어의 일종다른 응용프로그램이 유용한 작업을 할 수 있도록 환경을 제공⬆︎처리능
메모리에 올라와 실행되고 있는 프로그램의 인스턴스(독립적인 개체)"로써 하드디스크에 저장 돼 있는 코드뭉치, 정적인 데이터가 메모리에 할당되어 생명력이 있는 프로세스가 된다. 즉 운영체제로부터 시스템 자원을 할당받는 작업의 단위이며 실행된 프로그램을 의미한다.코드 영역
CPU가 프로그램을 실행하는 도중에 입출력 하드웨어 등의 장치나 예외상황이 발생하여 처리가 필요할 경우 현재 실행 중인 작업을 즉시 중단하고, 발생된 상황에 대한 우선 처리가 필요함을 CPU에게 알리는 것운영체제는 CPU를 최대한 효율적으로 사용해야한다.입출력 연산이
운영 체제의 커널이 제공하는 서비스에 대해, 응용 프로그램의 요청에 따라 커널에 접근하기 위한 인터페이스이다.사용자 프로그램이 특권 명령의 수행을 필요로 하는 경우, 운영체제에게 특권 명령의 대행을 요청하는 것이 시스템 콜이다.일반 명령: 메모리에서 자료를 읽어오고,
커널의 데이터 영역에 존재하며 각각의 프로세스마다 고유의 PCB가 있다.프로세스가 생성되면 메타데이터들을 저장해 놓는 곳, 한 PCB 안에는 한 프로세스의 정보가 담김.Linked List 방식으로 관리된다.PCB List Head에 PCB들이 생성될 때마다 붙게 된다
프로세스들 간의 의사소통하는 것을 IPC라고 한다. 프로세스가 통신 가능하다는 것은 서로 다른 프로세스가 데이터를 주고 받을 수 있다는 것이며, 동시에 접근 가능한 메모리 즉, 프로세스들이 공유하는 메모리가 필요하다는 뜻이다.프로세스가 공유 메모리 할당을 커널에 요청하
스케줄링?CPU 를 잘 사용하기 위해 CPU 스케줄링 알고리즘을 이용해 프로세스를 잘 배정하는 것을 말한다. Scheduling criteria(척도)는 스케줄링의 효율을 분석하는 기준들이다.CPU 이용률(Utilization): 어느 기간 동안 또는 특정 SNAPSH
두 개 이상의 프로세스나 스레드가 자원을 얻지 못하고 무한 대기 상태로 있는 경우를 의미하며, 시스템적으로 한정된 자원을 여러 곳에서 사용하려고 할 때 발생한다.아래 4가지 조건이 모두 성립해야 데드락이 발생한다.상호 배제 한 번에 한 개의 프로세스만 해당 자원을 사용
공유 자원에 대해 동기화 처리 장치 없이 여러 프로세스가 동시에 접근을 시도할 때, 타이밍이나 순서 등이 결과값에 영향을 줄 수 있는 상태