copy on write
-
실습과 그림으로 배우는 리눅스 구조 7장 정리운영체제 2022. 11. 10. 01:00
파일시스템 리눅스의 파일 시스템은 트리 구조로 되어 있다. ext4, XFS, Btrfs 등의 파일 시스템을 사용할 수 있다. 이외에도 다양한 종류의 파일 시스템들이 존재한다. 프로세스가 파일 시스템과 관련된 시스템 콜 호출시 동작 흐름 커널 내 모든 파일 시스템 공통처리가 동작 대상 파일의 파일시스템 종류를 판별 후, 시스템 콜에 대응되는 처리를 한다. 파일 시스템이 XFS, ext4, Btrfs 등 인지 판별 한다. 데이터 읽기의 경우, 디바이스 드라이버에게 맡긴다. 디바이스 드라이버가 데이터를 읽어들인다. 데이터와 메타데이터 데이터 - 문서, 사진, 프로그램 등의 내용 메타데이터 - 종류, 시간정보, 권한 정보 등의 정보를 가지고 있음 df 커맨드를 통해서 본 파일 시스템의 스토리지 양은 메타데이터..
-
실습과 그림으로 배우는 리눅스 구조 5장 정리운영체제 2022. 11. 6. 12:56
메모리 관리 단순 메모리 할당시 문제점 커널이 프로세스에 메모리를 할당하는 경우는 다음과 같다. 프로세스가 생성될 때 프로세스가 시스템 콜을 통해서 동적으로 메모리를 할당 받을 때 malloc() 단순한 메모리 할당 방법의 문제점 메모리 단편화 문제 다른 용도의 메모리에 접근 가능 여러 프로세스를 다루기 곤란 메모리 단편화 문제 메모리 획득과 해제를 반복하면, 메모리 단편화가 발생한다. 총 남아있는 메모리 양은 충분하지만, 중간 중간이 비어 있어서 사용할 수 없는 경우가 발생한다. 다른 용도의 메모리에 접근 가능 주소를 직접 지정하면 데이터가 오염되거나 파괴될 위험이 있다. 여러 프로세스를 다루기 곤란 같은 프로그램을 실행하게 되었을 때, 주소가 겹치면 실패하는 경우도 있다. 이렇게 단순한 메모리 할당은..