본문 바로가기

전체 글

(16)
[OS] 메모리 가상화(Memory Virtualization): 4. Free-Space Management *이 글은 Operating Systems: Three Easy Pieces(운영체제 아주 쉬운 세 가지 이야기)를 바탕으로 작성되었습니다. 첨부한 모든 그림은 해당 도서에서 가져온 자료입니다. 내용 중 잘못된 부분이 있다면 알려주세요 :) 지난 글에서 segmentation으로 메모리를 관리하여도 외부 단편화 문제가 있다는 것을 보았다. 메모리의 빈 공간들은 여러 크기로 분할되다가 결국 단편화된다. 예시로, 위 그림을 보자. 현재 빈 공간의 총 크기는 20byte로, 10bytes 짜리 공간 2개가 나눠져있다. 하지만, 15byte짜리 요청을 실패한다. 빈 공간들을 어떻게 관리해야할까? 단편화를 최소화 시키기 위해 어떻게 해야할까? 가변 사이즈 요청을 어떻게 만족할 수 있을까? 여러 가지 방법들의 시간..
[Docker] Docker로 배포하기: 2. 도커 컨테이너 생성, 도커 컴포즈 실행 지난 글에서 가상화와 도커에 대해 공부하면서, 도커가 무엇인지 어느 정도 파악했다.이제 실제 사용까지 해보자! 🧐 Docker desktop 다운로드도커 데스크탑은 컨테이너화된 애플리케이션 및 마이크로서비스를 빌드, 공유 및 실행을 할 수 있는 애플리케이션이다. https://docs.docker.com/desktop/ Overview of Docker DesktopExplore more of Docker Desktop, what it has to offer, and its key features. Take the next step by downloading or find additional resources.docs.docker.com 도커 데스크탑 다운로드 후 터미널 창에서 docker --vers..
[OS] 메모리 가상화 (Memory Virtualization): 3. Segmentation *이 글은 Operating Systems: Three Easy Pieces(운영체제 아주 쉬운 세 가지 이야기)를 바탕으로 작성되었습니다. 첨부한 모든 그림은 해당 도서에서 가져온 자료입니다. 내용 중 잘못된 부분이 있다면 알려주세요 :) Dynamic allocation은 heap, stack 사이의 공간이 낭비되는 내부 단편화 문제가 있었다. 이를 방지하기 위해 만들어진 segment에 대해 알아보자! 🧐 Segment란 Address Space는 Code, Heap, Stack 영역 등으로 구성되어있다. 이 각각의 영역을 세그먼트(Segment)라고 한다. 다시 말해, 세그먼트은 특정 길이를 가지는 연속적인 주소 공간이다. 우리가 기존에 공부했던 base, bound를 생각해보자(맨 위 그림 참고..