|
매개변수 |
그것이 의미하는 무엇을 |
dinfo.drive = 0x00 |
그것은 플로피 디스크 드라이브 (a:)인 드라이브 0를 나타낸다 |
dinfo.head = 머리 |
그것은 맨 위 번호 0와 1를 플로피가 쌍방 (2명의 머리)를 비치하기 때문에 가르킨다 |
dinfo.track = 대위 |
그것은 대위 0 에 79를 플로피의 각 측에 80의 대위가 있기 때문에 가르킨다. |
dinfo.sector = 분야 |
그것은 분야 1 에 18를 각 대위에 있는 18의 분야가 있기 때문에 가르킨다. |
dinfo.sector = 1 |
를 위해 고려할 것이다 분야의 수는 가동을 = 1 쓴다 |
dinfo.buffer = dbuf |
가동을 위한 자료 버퍼 |
- _bios_disk (_DISK_WRITE, &dinfo)는 dinfo에 의해 지정된 플러피 디스크의 육체적인 표면의 분야에 자료를 쓴다.
- 돌려보내진 상태는 성공적인 가동을 위한 메시지를 디스플레이하거나 스크린에 착오 알림말을 디스플레이하기 위하여 이용되는 결과에서 아무 과실나 발생하는 경우에 저장된다.
만약에 후에 방법 - 당신의 새로운 플로피가, 당신 작동되지 않는 2 방법을 더 적용한 일지모른다 - 당신이 방법 동안에 목적지 디스크 - 2로 사용한 당신의 새로운 플로피에 1.
뿐만 아니라 이것 또한 명중과 예심의 수는 디스크의 타락에게 달려 있기 변화할지도 모른다. 그러나 당신은 당신이 만족한 결과를 얻지 않을 후에도 고민할 필요가 없는 경우에.
당신은 파일 회복에 의하여 파일을 시도할 수 있고 또는 당신이 다음에서 배울 더욱 많은 끝을 시도할 수 있다. 여기에서 우리는 자료를 재기하는 우리의 프로그램에서 루트 디렉토리에서 파일 정보를, 모으기의 아이디어를 실행할 것이다. |
삭제했거나 분실된 자료를 위한 논리적인 회복을 위해 생각:
우리가, DBR만 대위 0에 있는 분야 타락되고 루트 디렉토리 읽기 쉬운 지 FAT1가 있, FAT2 예상하고 곳에 우리가 회복을 위한 이 장에서, 자료를 그런 경우에는 재기할 것인 토론한 모든 이전 케이스.
직접적으로 자료가 디스크에서 이거나 당신이 루트 디렉토리에서 그것의 정보를 읽어서 자료를 삭제되는 경우에 그러나 문제가 지방질의 타락 때문에 싶으면 재기하고, 우리는 파일의 송이, 크기, 그것의 루트 디렉토리 입장에서 속성 등등을 시작하는 정보와 같은 파일 이름을 읽을 필요가 있다.
각 파일 전화번호부를 위한 32의 바이트의 정보가 있다 우리가 더 이른 장에 있는 루트 디렉토리에 관하여 이미 토론하기 때문에. 이 32의 바이트는 다음과 같이 분할된다:
바이트 수 |
정보 묘사 |
8개의 바이트 |
파일 이름 |
3개의 바이트 |
연장 |
1개의 바이트 |
속성 |
10의 바이트 |
보류하는 |
2개의 바이트 |
창조되는 시간 또는 최신 갱신 |
2개의 바이트 |
창조되는 날짜 또는 최신 갱신 |
2개의 바이트 |
송이 시작 |
4개의 바이트 |
파일 사이즈 |
|
|