https://github.com/SIMHANGSUB/HoGoS/tree/master/29 29강 소스코드. ./exec.sh 명령어로 실행하자 본격적으로 파일시스템의 쓰기를 구현하자!
이를 위해선 몇 가지 사전 작업이 필요하다. Block을 할당(alloc)하고 해제(Free)하는 것도 그 사전 작업 중 하나이다. fs.c을 다음과 같이 추가하자.
논리가 어려워보인다. 하지만 별 거 아니다.
먼저 Bitmap 테이블을 하나씩 찾아본다 ( for 문을 1024번 돌린다 ) 하나의 테이블마다 1바이트 크기(8비트) 이고 이 중 1비트 ~ 8비트까지 0인지 찾아본다. 0이란 소리는 아직 쓰지 않은 블록이기 때문이다. 0일 경우엔 이를 1로 바꾸고, 이에 해당하는 블록 주소를 result에 저장한다. 그리고 HDDwrite..........