# OS

Deadlock
Deadlock 교착 상태두 개 이상의 프로세스나 스레드가 서로 자원을 얻지 못해서 다음 처리를 하지 못하는 상태무한히 다음 자원을 기다리게 되는 상태를 말한다.시스템적으로 한정된 자원을 여러 곳에서 사용하려고 할 때 발생한다.(마치, 외나무 다리의 양 끝에서 서로가

프로세스 동기화 (2)
프로세스 동기화 기법 Mutax lock Semaphore Monitor 1. Mutax Lock > 상호 배제를 위한 동기화 도구(자물쇠 역할), mutax lock 임계 구역(Critical Section)을 가진 스레드들의 실행시간이 서로 겹치지 않고 각각
공유 메모리
공유 메모리는 Linux/UNIX 운영체제에서 프로세스 간 데이터 공유를 위한 메커니즘 중 하나이다.공유 메모리를 사용하는 주된 사용 용도는 다음과 같다.데이터 공유 및 프로세스 간 통신:여러 프로세스 간에 데이터를 공유하기 위해 사용된다. 예를 들어, 한 프로세스가

프로세스 동기화 (1)
목차동기화 의미동기화 예제공유자원과 임계구역동시에 실행되는 프로세스(thread 포함)들은 서로 협력하며 영향을 주고 받는다.이 과정에서 자원의 일관성을 보장해야 한다정의 : 프로세스들의 수행 시기를 맞추는 것실행 순서 제어 : 프로세스를 올바른 순서대로 실행하기상호
[CS] 운영체제 - 메모리 관리
프로세스의 주소(Address)는 논리적 주소(Logical address)와 물리적 주소(Physical address)로 나뉜다. 논리적 주소 == 가상 주소(Virtual address)CPU가 생성하는 주소 프로세스마다 독립적으로 가지는 주소 공간이기 때문에 프

CPU 스케줄링 (2) - CPU 스케줄링 알고리즘
CPU 스케줄링 알고리즘선입 선처리 스케줄링 : FCFS (First Come Fisrt Served)최단 작업 우선 스케줄링 : SJF (Shortest Job First)라운드 로빈 스케줄링 : RR (Round Robin)최소 잔여 시간 우선 스케줄링우선순위 스케

[CS/Algorithm Study] OS - Page replacement algorithm
메인 메모리의 크기는 물리적으로 한정되어 있으며, 따라서 메인 메모리의 크기보다 크기가 큰 프로세스는 실행할 수가 없다. 이를 해결하기 위해 등장한 메모리 관리 기법이 바로 가상 메모리(Virtual memory)이다.

프로세스 상태와 계층 구조
목차 프로세스 상태프로세스 계층 구조프로세스 생성 기법생성 상태준비 상태실행 상태대기 상태종료 상태이제 막 메모리(보조장치에서 메모리로 적재) 에 적재되어 PCB를 할당 받은 상태준비가 완료 되었다면 준비 상태로당장이라도 CPU를 할당 받아 실행할 수 있지만자신의 차례

Hard Disk Drive
: 컴퓨터 저장 장치에 데이터를 기록하기 위한 리소스며 파일의 이름으로 구별된다.파일-> 확장자 -> 연결프로그램 -> 파일시그니처 매직넘버 체크썸 - 패리티비드 (CRC-1)

[운영체제] 7장: Memory Management
Real memory: 메인 메모리에 프로그램 전체가 포함된다.메인 메모리에 여러 프로세스들을 적재시키기 위해 메모리를 여러 개로 나누는 것메인 메모리 안에 가능한 많은 프로세스를 올리기 위해 메모리가 효율적으로 할당되어야 한다.Relocation: 프로그램 상 데이터

[CS/Algorithm Study] OS - Memory allocation
주로 RAM 혹은 메모리로 불리는 Random Access Memory는 컴퓨터의 주기억장치로서 현대 컴퓨터에서 작업의 중심이 되는 부품 중 하나이다.
User mode, Kernel mode
커널 모드(Kernel Mode) 는 운영 체제에서 가장 높은 권한을 가진 모드로, 시스템의 핵심 부분을 관리한다. 이 모드에서 실행되는 코드는 하드웨어와 시스템 자원에 대한 전체적인 제어 권한을 가지며, 컴퓨터 시스템의 가장 깊은 부분을 조작할 수 있다.전체 권한커널
가상메모리
가상 메모리(Virtual Memory) 는 운영 체제에서 사용하는 중요한 개념으로, 컴퓨터의 메인 메모리(일반적으로 RAM)가 부족할 때 보조 저장 장치(예: 하드 드라이브, SSD)의 일부를 메모리처럼 사용하는 기술이다.메모리 관리가상 메모리는 프로그램에 물리적 메
[CS/Algorithm Study] OS - Address binding
프로그램이 실행을 위해 메모리에 적재되면(즉, 프로세스가 되면) 해당 프로세스를 위한 독자적인 주소 공간이 생성된다. 이를 논리적 주소 또는 가상 주소(Virtual address)라 하며, 각 프로세스마다 0번부터 주소가 시작된다.

운영체제의 시작과 발전
컴퓨터 사용자와 컴퓨터 하드웨어 사이에서 중계 역할을 하면서, 프로그램의 실행을 관리하고 제어하는 시스템 소프트웨어컴퓨터가 켜질 때 메모리에 처음으로 적재되어 나머지 모든 프로그램의 실행을 제어하고 사용자의 요청을 처리해주는 소프트웨어컴퓨터의 자원을 독점적으로 관리하는