연결리스트, 스토리지클래스, 메모리관리, 문자열처리 테스트를 위한 프로그램이다.
- 그래픽이 전혀 없이 콘솔에서만 사용이 가능
- fdisk 와 유사한 인터페이스
- 전체적인 자료구조는 단일 연결리스트
- 기능별로 모듈화(lib.c, book.c, process.c, file.c, find.c, main.c)
- 일반모드(?)와 검색모드가 있다.
- Gentoo Linux(2.6.17), FreeBSD 6.1, SunOS 5.9, AIX Version 5 에서 테스트 했음.
파일(main.c를 제외한 모든 c 는 h 와 쌍으로 이루어진다)
lib.c : 각종 문자열 처리 및 기반 library
book.c : SBook 구조체 초기화, 메모리 할당 및 해제 전역변수 정의
process.c : 연결리스트 연산처리
file.c : 연결리스트와 데이터파일 상호변환
find.c : 검색모드 처리
main.c : main
컴파일 방법
book.tar.gz 압축해제 후 make
$ gzip -cd book.tar.gz | tar xvf -
$ cd book
$ make
$ ./bookmgr
이슈
1. 연결리스트 저장파일(.data)을 수작업으로 변경하면 Segmentation Fault 발생
해결 - 반드시 프로그램의 수정기능을 이용해서 내용을 변경해야 한다.
2. .data 파일이 1024byte 넘은 다음 수정 또는 삭제를 하면 .data 파일의 전체적인 구조가 깨어진다.
해결 - file.c 에서 saveList(), loadList() 의 contents 배열을 memset로 초기화 수행후 진행하면 해결됨.
다운로드
- 그래픽이 전혀 없이 콘솔에서만 사용이 가능
- fdisk 와 유사한 인터페이스
- 전체적인 자료구조는 단일 연결리스트
- 기능별로 모듈화(lib.c, book.c, process.c, file.c, find.c, main.c)
- 일반모드(?)와 검색모드가 있다.
- Gentoo Linux(2.6.17), FreeBSD 6.1, SunOS 5.9, AIX Version 5 에서 테스트 했음.
파일(main.c를 제외한 모든 c 는 h 와 쌍으로 이루어진다)
lib.c : 각종 문자열 처리 및 기반 library
book.c : SBook 구조체 초기화, 메모리 할당 및 해제 전역변수 정의
process.c : 연결리스트 연산처리
file.c : 연결리스트와 데이터파일 상호변환
find.c : 검색모드 처리
main.c : main
컴파일 방법
book.tar.gz 압축해제 후 make
$ gzip -cd book.tar.gz | tar xvf -
$ cd book
$ make
$ ./bookmgr
이슈
1. 연결리스트 저장파일(.data)을 수작업으로 변경하면 Segmentation Fault 발생
해결 - 반드시 프로그램의 수정기능을 이용해서 내용을 변경해야 한다.
2. .data 파일이 1024byte 넘은 다음 수정 또는 삭제를 하면 .data 파일의 전체적인 구조가 깨어진다.
해결 - file.c 에서 saveList(), loadList() 의 contents 배열을 memset로 초기화 수행후 진행하면 해결됨.
다운로드
TAG bookmgr

댓글을 달아 주세요