Pintos Project 4 File System

Park Choong Ho·2021년 11월 2일
0

FAT (File Allocation Table)

예전에는 핀토스 파일 시스템을 multi-level indexing을 바탕으로 UNIX FFS를 활용해서 구현하게끔 되어 있었습니다.

이번에는 좀더 쉬운 방식인 FAT (File Allocation Table) 방식으로 구현합니다.

핀토스에서는 file_open 함수를 활용하여 inode 구조체를 가져옵니다. inode 구조체에는 해당 inode가 가리키는 디스크가 어디인지에 대한 정보가 담겨있습니다. inode 구조체로 해당 파일에 속해있는 첫번째 섹터에 접근합니다. 해당 섹터를 가리키는 FAT에는 파일의 다음 섹터가 어디있는지에 대한 정보가 담겨있습니다.

그렇게 꼬리를 물어가다 EOF를 만나면 읽기를 멈추게됩니다.

inode

inode란 파일에 대한 metadata를 담고 있는 구조체입니다. 특정 파일에 대한 여러 정보들을 담고 있습니다. inode 구조체를 활용하여 디스크에 담긴 파일에 대한 정보를 가져옵니다.

input/ouput(I/O) device

  • General I/O Device: PCI, 좀 더 좋은 성능
  • Peripheral Bus: SCSI, SATA, 상대적으로 느리다.

DMI (Direct Media Interface)

eSATA interface (external serial AT Attachment)

USB (Universal Serial Bus)

PCIe (Peripheral Component Interconnect Express)

profile
백엔드 개발자 디디라고합니다.

0개의 댓글