본문 바로가기
반응형

전체 글96

Memory Management 2 - Paging 저번 글에서 메모리 관리를 위해 사용하는 방법에 대해서 알아봤다. dynamic relocation의 방법 중 fixed/variable partitions와 segmentation에 대해 알아봤었는데 paging이라는 방법도 있다고 했다. 이 방법은 셋 중 가장 보편적으로 사용되는 방법이고 내용도 상대적으로 많기 때문에 이 글에서 따로 다뤄볼 생각이다. Structure of Virtual Memory paging에 대해 알아보기 전에 우선 가상메모리가 어떤 식으로 구성되는지 간단히 알아보자. 가상 메모리는 각각의 프로세스에게 굉장히 많은 메모리 공간이 있는 것처럼 보이게 한다고 했다. 이러한 가상 메모리 공간의 크기는 어떻게 될까 컴퓨터 OS, 프로그램 등을 설치할 때 32bit/64bit로 버전이 .. 2022. 5. 19.
재고자산 이번 글에서는 재고자산에 대해 알아볼 것이다. 재고자산이란 직접적인 판매 목적이거나 판매 목적과 연관되어 보유하고 있는 자산이다. 이 말은 자산마다 재고자산인지 아닌지가 절대적으로 결정되어 있는 것이 아니라는 뜻이다. 재고자산의 판단기준은 그 기업의 정상적인 영업활동과정에서 판매(or 가공)목적으로 보유하고 있는가의 여부이다. 예를 들어 부동산매매업체는 부동산을 판매목적으로 보유하고 있기 때문에 이를 재고자산으로 분류하는 반면, 제조기업이 소유하고 있는 부동산은 판매목적이 아니기에 투자부동산으로 분류된다. 재고자산의 분류 재고자산은 다음과 같이 분류할 수 있다. 판매 목적으로 보유하고 있는 자산 상품(merchandise): 판매를 목적으로 구입한 상품, 미착상품, 적송품 등 제품(finished goo.. 2022. 5. 18.
Memory Management 1 이 글에서는 OS가 하는 일 중 하나인 메모리 관리에 대해 알아보자. 많은 프로그램이 메모리에 올려져서 실행이 되는데 OS는 여려개의 응용 프로그램들이 한정된 메모리 자원을 사용하는 것을 관리해야 한다. 컴퓨터가 막 나온 1950년대 초반같은 경우에는 effective address가 실제 물리적인 메모리 주소였었다. 이때는 전체 시스템에 대한 접근이 제한되지 않은 채 한번에 하나의 프로그램만 실행될 수 있었다. 그 이후에는 다중 프로그래밍이 등장하였는데 2개 이상의 프로그램에서 CPU나 I/O 작업이 겹치게 될 경우에는 처리량이 증가하였다. 어쨌든 이러한 이유로 fig 1처럼 메모리에 여러 프로그램을 올려야 했다. 이때 각 프로그램이 올려지는 위치는 서로 독립적으로 하여 프로그래밍이나 스토리지 관리를 .. 2022. 5. 16.
Deadlock 이전 글에서 synchronization(동기화)을 이루기 위해 lock을 사용하였었다. 하지만 간단한 예제가 아닌 실제 상황에서는 performance의 큰 저하 없이 lock으로 병렬성(동시성)을 만들어내는게 쉽지 않은 걸 알았다. 만약 lock을 촘촘하게 한다면 병렬성은 올라가도 오버헤드도 증가하기 때문에 성능이 감소할 수도 있고 구조가 복잡해지면 deadlock이 발생할 수도 있었기 때문이다. 이 글에서는 deadlock에 대해 더 알아보고, 컴퓨터 시스템의 deadlock을 예방하거나 피하기 위해 사용하는 방법들도 살펴볼 것이다. System Model 여기서는 다음과 같은 모델을 사용한다. 시스템은 cpu, memory, I/O device 등의 자원(resource)으로 이루어져 있다. 단순.. 2022. 5. 10.
반응형