운영체제3 물리 메모리 관리 메모리 주소란?1Byte로 나뉜 메모리의 각 영역은 메모리 주소로 구분하며 CPU는 메모리에 있는 내용을 가져오거나 작업 결과를 메모리에 저장하기 위해서 주소를 사용한다.컴파일러 - 인터프리터컴파일러 : 소스코드를 컴퓨터가 실행할 수 있는 기계어로 번역한 후에 한꺼번에 실행 ( C 언어, 자바 등... )소스코드에서 오류를 발견하여 문제없이 실행을 위해, 소스코드를 간결히 정리해서 실행 속도 향상을 위해 사용컴파일러 과정 ) 소스코드 -> 컴파일러 -> 목적 코드 -> 링커 -> 실행인터프리터 : 소스코드를 한 행씩 번역하여 실행 ( 자바스크립트, 파이썬 등 ) ex) 인터프리터 - 달리기 1회후 푸쉬업을 2회하고 물을 마신다.컴파일러 - 운동 목록 ( 달리기 1회, 푸쉬업 2회) , 달리기 1회.. 2026. 3. 16. 페이지 교체 알고리즘 한번쯤은 들어봤을 페이지 교체 예시로 FIFO, LRU, LFU...등등이 있다페이지 교체의 궁극적인 목표는 메모리에서 앞으로 사용할 가능성이 적은 페이지를 교체하여 페이지 부재(Page Fault)를 줄이고 시스템의 성능을 향상시키는 것이며 이를 통해 시스템이 메모리 자원을 보다 효율적으로 사용하도록 돕고, 페이지를 불필요하게 자주 디스크에서 로드하거나 저장하지 않도록 한다.여러 알고리즘이 존재하니 살펴보자무작위 페이지 교체 알고리즘 ( randompagereplacement algorithm )특별한 로직없이 무작위로 선정하기때문에 지역성을 고려하지않아 만일 자주 사용하는 페이지가 선정된다면 굉장히 성능면에서 떨어지며 효율적이지 않다.FIFO 페이지 교체 알고리즘 ( First In First.. 2026. 3. 16. 운영체제 교착 상태 (데드락) 교착 상태란? 2개 이상의 프로세스가 다른 프로세스의 작업이 끝나기만 기다리며 작업을 더이상 진행을 못하는 상태아사 상태 vs 교착 상태아사 상태 - 잘못된 정책으로 인해 특정 프로세스의 작업이 지연되는 것교착 상태 - 여러 프로세스가 작업을 진행하다가 자연적으로 발생되는 것교착 상태의 필요 조건 4가지 => 4가지 조건 모두 만족해야 교착 상태 발생상호배제 (mutual exclusion) : 한 프로세스가 사용하는 자원은 다른 프로세스와 공유 불가능한 배타적인 자원이어야 한다 => 배타적 자원 사용시 교착 상태 발생비선점 (non-preemptive) : 한 프로세스가 사용 중인 자원은 도중에 다른 프로세스가 빼앗을 수 없는 비선점 자원이어야 한다 => 빼앗지 못한다 = 공유가 안된다 교착.. 2026. 3. 16. 이전 1 다음