본문 바로가기

OS5

Memory Management : 페이징 페이징 Paging 불연속 할당 방식의 하나 프로그램을 구성하는 가상 주소 공간을 같은 크기의 페이지로 분할합니다. 페이지 단위로 물리적인 메모리에 올려두거나 Backing storege에 내려놓거나 합니다. 물리적인 메모리의 공간을 페이징 프레임 paging frame이라고 부릅니다. 균일한 크기로 잘려있기 때문에 hole의 크기가 각각 달라서 생기는 문제점은 없습니다. 반면 주소 변환은 굉장히 복잡해 집니다. 더이상 하나의 프로세스가 연속된 주소를 가진다는 보장이 없기 때문입니다. 페이징의 메소드 물리적 메모리를 동일한 크기의 frame으로 나눕니다. 논리적 메모리를 동일한 크기의 page로 나눕니다. 이 때, frame과 page의 크기는 같습니다. 모든 가용 frame들을 관리합니다. page t.. 2023. 2. 14.
Memory Management : 연속 할당 방식 연속 할당 방식 고정분할 방식 Fixed partition allocation 물리적 메모리를 몇 개의 영구적 분할로 나눕니다. 분할의 크기가 모두 동일한 방식도 있고 서로 다른 방식도 있습니다. 분할 하나의 공간에 하나의 프로그램을 적재합니다. 융통성이 없습니다. 동시에 메모리에 load되는 프로그램의 총 수가 제한됩니다. 최대 수행 가능한 프로그램의 크기도 제한됩니다. Internal fragmentation 이나 External fragmentation이 발생할 수 있습니다. 😗 외부 단편화, 내부 단편화는 무엇일까? 둘 다 메모리가 낭비되는 상황을 말한다. 외부 단편화 External fragmentation - 프로그램 크기보다 분할의 크기가 작은 경우 - 아무 프로그램에도 배정되지 않은 빈 곳.. 2023. 2. 14.
Memory management : 물리적 메모리 할당 방법 Allocation of Physical Memory 메모리의 두 영역 OS 상주 영역 낮은 주소 영역 인터럽트 벡터interrupt vector 와 함께 사용 사용자 프로세스 영역 높은 주소 영역 사용자 프로세스 영역의 할당 방법 연속 할당 Contiguous allocation 각 프로세스가 메모리의 연속적인 공간에 적재되는 방법 고정분할 방식 Fixed partition allocation 가변분할 방식 Variable partition allocation 불연속 할당 Noncontiguous allocation 하나의 프로세스가 메모리 여러 영역에 분산되어 적재되는 방법 현대 시스템에서 사용한다. Paging ⭐️ Segmentation Paged Segmentation 2023. 2. 14.
운영체제란 무엇인가? Operating System, OS 운영체제 운영 체제는 컴퓨터에서 실행되는 가장 중요한 소프트웨어이다. 중앙처리장치CPU, 메모리와 프로세스는 물론 모든 소프트웨어와 하드웨어를 관리하는 역할을 한다. 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층이다. 사용자가 직접 하드웨어를 접해 조작하지 않고 (컴퓨터의 언어를 구사하지 못해도) 운영체제의 관리를 받으면서 원하는 작업을 할 수 있다. 협의의 운영체제 광의의 운영체제 - 전공자의 입장에서 운영체제에 대한 이해. '커널'을 뜻한다. - 운영체제의 핵심 부분으로 메모리에 상주하는 부분 - 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영체제의 유형 운영체제는 일반적으로 모든 컴퓨터에 .. 2023. 1. 25.
유닉스 Unix 와 리눅스 Linux 유닉스와 리눅스의 시작 1991년 리누즈 토발즈라는 대학생이 Linux 커널을 만듬 1969년 유닉스의 탄생 유닉스 Unix 유닉스의 주요 기능 멀티태스킹 : 여러 프로그램을 동시에 실행할 수 있는 기능 가상메모리 : 프로그램이 물리적으로 사용 가능한 것보다 더 많은 메모리를 사용할 수 있도록 하는 시스템 파일 시스템 : 파일을 구성하고 저장하기 위한 계층적 시스템 셀 : 사용자가 운영 체제와 상호 작용할 수 있도록 하는 명령줄 인터페이스 리눅스 Linux 리누스 토르발르가 1991년 유닉스 기반으로 개발한 컴퓨터 운영체제이다. 리눅스는 공개 소프트웨어라 회사 또는 그룹 등에서 커널 소스를 받아 OS를 직접 제작하여 사용된다. 따라서 특정 기관이 배포를 책임지는 것이 아니라 많은 배포판이 나온다. 리눅스.. 2023. 1. 7.