1. 개념 한줄 요약
블록 저장 구조는 저장장치의 데이터를 일정한 크기의 블록 단위로 나누어 저장하고 관리하는 방식으로, 파일 시스템과 데이터 처리 효율을 높이는 저장 구조다.
2. 쉽게 풀어쓴 설명
컴퓨터의 저장장치(HDD, SSD 등)는 데이터를 하나의 큰 공간에 연속적으로 저장하는 것처럼 보이지만 실제로는 일정한 크기의 작은 단위로 나누어 데이터를 관리한다. 이 작은 저장 단위를 블록(Block)이라고 한다.
파일이 저장될 때 운영체제는 파일 데이터를 여러 블록으로 나누어 디스크에 기록한다. 이후 파일을 읽거나 수정할 때도 블록 단위로 데이터를 처리한다.
이러한 구조는 저장장치 공간을 효율적으로 활용하고 데이터 접근 속도를 높이는 데 도움이 된다. 또한 파일 크기가 달라도 동일한 방식으로 데이터를 관리할 수 있기 때문에 저장 시스템 관리가 쉬워진다.
쉽게 말해 큰 저장 공간을 일정한 크기의 조각으로 나누어 데이터를 저장하고 관리하는 방식이라고 이해할 수 있다.
3. 구조·원리 설명
✔ 블록 기반 저장 구조
저장장치는 데이터를 일정한 크기의 블록으로 나누어 관리한다. 블록 크기는 파일 시스템 설계에 따라 다르지만 보통 몇 KB 단위로 설정된다.
예를 들어 4KB 블록 구조라면 저장장치는 데이터를 4KB 단위로 읽고 쓸 수 있다. 파일이 10KB라면 최소 3개의 블록이 사용된다.
이 방식은 디스크 접근 방식을 단순화하고 데이터 관리 효율을 높인다.
✔ 파일과 블록 연결 방식
파일 시스템은 파일을 여러 블록에 나누어 저장한 뒤 각 블록의 위치 정보를 관리한다. 파일을 열 때 운영체제는 해당 파일이 저장된 블록 위치를 확인해 데이터를 읽어온다.
일반적인 과정은 다음과 같다.
① 파일 생성 요청
② 파일 데이터를 블록 단위로 분할
③ 디스크 블록에 데이터 저장
④ 파일 시스템이 블록 위치 정보 기록
이 구조 덕분에 큰 파일도 여러 블록에 나누어 저장할 수 있다.
✔ 블록 주소 관리 구조
파일 시스템은 블록 위치를 관리하기 위해 별도의 메타데이터 구조를 사용한다. 이 구조에는 파일이 어떤 블록에 저장되어 있는지에 대한 정보가 포함된다.
대표적인 관리 방식에는 다음과 같은 것들이 있다.
- 연결 리스트 방식
- 인덱스 블록 방식
- 트리 기반 관리 구조
이러한 구조는 파일 접근 속도와 저장 효율에 영향을 미친다.
✔ 입출력 처리와 블록 단위 접근
운영체제는 저장장치와 데이터를 주고받을 때 블록 단위로 데이터를 처리한다. 디스크에서 데이터를 읽을 때도 필요한 블록을 불러오고, 데이터를 저장할 때도 블록 단위로 기록한다.
이 방식은 저장장치의 물리적 구조와 잘 맞기 때문에 성능을 향상시키는 데 도움이 된다.
4. 예시
① 파일 저장 예시
10KB 크기의 파일을 저장할 경우 4KB 블록 구조에서는 3개의 블록이 사용된다.
② 데이터 읽기 예시
프로그램이 파일 일부 데이터를 읽더라도 운영체제는 해당 블록 전체를 메모리로 불러온다.
③ 데이터베이스 저장 예시
데이터베이스 시스템도 데이터를 페이지 또는 블록 단위로 저장하고 관리한다.
5. 주의점
❗ 내부 공간 낭비 가능
파일 크기가 블록 크기보다 작으면 일부 공간이 사용되지 않을 수 있다.
❗ 블록 크기 선택 중요
블록 크기가 너무 작으면 관리 비용이 증가하고 너무 크면 공간 낭비가 발생할 수 있다.
❗ 디스크 성능 영향
블록 단위 접근 방식은 저장장치 성능에 영향을 줄 수 있다.
❗ 파일 시스템 구조 차이
파일 시스템 종류에 따라 블록 관리 방식이 다르게 구현될 수 있다.
6. 요약 정리
블록 저장 구조는 저장장치 데이터를 일정한 크기의 블록 단위로 나누어 관리하는 방식이다. 파일은 여러 블록에 나누어 저장되고 파일 시스템은 블록 위치 정보를 관리해 데이터를 읽고 쓸 수 있도록 한다. 블록 기반 구조는 저장장치 관리 효율을 높이고 데이터 접근을 단순화하는 장점이 있으며, 현대 파일 시스템과 데이터 저장 구조의 기본적인 관리 방식으로 사용된다.