본문 바로가기

공부/[2007] 유닉스 프로그래밍

2007/10/19 작업 내용 1. 슈퍼 블록의 구조체와, file 구조체, inode 구조체에 대한 정보를 얻어내었다. 2. 시스템 콜 레퍼런스를 구해서 구현 가능할 만한 파일이 있는지 확인해보았다. 결론을 내렸을 때, 시스템 콜이나 라이브러리로는 i-node 번호만으로 접근이 불가능하다. 뭐 내가 잘 모르는 것일 수도 있지만, 시스템 콜이나 라이브러리 상의 파일 컨트롤 함수들은 어디까지나 해당 파일이 존재할 때 사용하는 함수들이다. 대부분의 파일 컨트롤 함수들은 filepath를 문자열로 받거나, file descriptor를 인자로 받는다. file descriptor를 받기 위해서는 open, 또는 creat 함수를 사용하는데, 이 때 사용하는 인자가 filepath 문자열이므로. 결국 파일 컨트롤 함수들의 시작은 파일의 경로.. 더보기
2007/10/15 작업 내용 1. 프레젠테이션 작성 시작 역시나, 시작이 반이라는 기분으로 프레젠테이션 작성 시작 2. 삭제된 파일을 i-node로 직접 접근 가능한지 테스트 테스트 방법은 다음과 같이 1. 내용이 있는 파일을 생성 2. 파일의 i-node를 stat 명령을 이용하여 확인 3. read( int filedes, char* buf, size_t nbyte ) 함수의 filedes 인자에 직접 i-node를 넣어봄 4. 버퍼의 내용을 출력 결과는... 택도 없다... 애초에 접근 방법부터 잘못됬다. read 함수의 첫번째 인자는 file descriptor 이므로, i-node를 넣으면 안된다. * 오늘 작업 결과 애초에 택도 없는 삽질을 했다. 책을 조금이라도 읽어보고 시작했다면 삽질을 줄일 수 있었을테지만... 책이.. 더보기