Talen

Gearchiveerd - Schijf-EHBO: veelgestelde vragen (1 van 2)

Dit artikel bevat antwoorden op veelgestelde vragen over Schijf-EHBO. De vragen die in dit document worden behandeld zijn:

1. Ik heb met behulp van Schijf-EHBO geprobeerd een probleem in een tekstbestand op te sporen en te herstellen. Het programma meldde dat er geen problemen waren. Waarom herkent Schijf-EHBO het probleem niet?

2. Wat betekenen de meldingen die verschijnen als Schijf-EHBO mijn schijf controleert? Op welk type fouten controleert Schijf-EHBO?

Raadpleeg voor aanvullende informatie Tech Info Library-artikel 13628: "Schijf-EHBO: Veelgestelde vragen (2 van 2)"
Dit artikel is gearchiveerd en wordt niet meer bijgewerkt door Apple.
1) Als Schijf-EHBO meldt dat er geen problemen zijn met de harde schijf of diskette waarop het bestand staat, is er waarschijnlijk sprake van een beschadigd gegevensbestand (zoals een tekstverwerkingsbestand) of programma.

Schijf-EHBO controleert op fouten in directory's en catalogusbestanden en herstelt eventuele fouten. Afzonderlijke bestanden kunnen niet op beschadiging worden gecontroleerd. Het enige wat u kunt doen is het bestand vervangen door een reservekopie (indien u hierover beschikt) of het bestand opnieuw maken. Als het beschadigde bestand een programmabestand is, kunt u het oorspronkelijke programma opnieuw installeren.

========================================

2) Schijf-EHBO zorgt voor de integriteit van afzonderlijke bestanden op een volume dat is ingedeeld volgens de structuur 'Mac OS Standaard' (HFS) of 'Mac OS Uitgebreid' (HFS+). (HFS en HFS+ zijn methoden die het Mac OS gebruikt om gegevens op een schijf te plaatsen).

Een schijf kan bestaan uit verschillende partities, die door het systeem als afzonderlijke schijven worden behandeld. Elke partitie bevat de volgende gegevens:
                         --------
............................      |
Partitiegegevens           .      |
............................  --------
             
     Partitie schijfbesturingsbestand
............................  --------
Bootblokken                .      |
............................      |
Master Directory Block(MDB). Macintosh partitie
............................      |
Volumebitmap               .      |
............................      |
Catalogusbestand           .      |
............................      |
Extents Overflow-
bestand   .      |
............................      |

Bestanden/Vrije ruimte     .      |
............................      |
Alternatief MDB            .      |
............................   -------
............................
Andere partities
............................   -------

Partitieoverzicht
-----------------
Het eerste fysieke blok (512 KB) bevat het partitieoverzicht ("Partition Map"). Hierin wordt het eerste en laatste fysieke blok van elke partitie aangegeven en welke type indeling is gebruikt (Macintosh, A/UX, MS-DOS enz.). Het partitieoverzicht bevat ook de waarde voor de grootte van de "Logical Blocks".* Fysieke blokken zijn altijd 512 KB groot. De grootte van de blokken is afhankelijk van de capaciteit van de schijf. Als er een bestand naar de schijf wordt geschreven, krijgt het bestand een aantal logische blokken of *clumps* toegewezen. Hierdoor wordt het fragmentatieproces vertraagd, maar blijft er mogelijk wel ruimte vrij aan het einde van de bestandstoewijzing.

Schijfbesturingsbestand
-----------------------
Na het partitieoverzicht volgt het besturingsbestand dat wordt gebruikt voor SCSI-communicatie met de schijf. (Als het schijfbesturingsbestand wordt bijgewerkt nadat de schijf is geïnitialiseerd, is het mogelijk dat HFS het bestand naar het einde van de schijf verplaatst, afhankelijk van de beschikbare ruimte).

Bootblokken
-----------
Het HFS-volume begint met twee bootblokken. Hier worden de opstartinstructies opgeslagen samen met aanwijzingen voor het vinden van de systeembestanden en Finder-bestanden.

Master Directory Block
----------------------
Bevat volumegegevens zoals de datum en tijd waarop het volume is gemaakt en het aantal bestanden dat het volume bevat. Als het MDB wordt gelezen, verschijnt het volume op het bureaublad en wordt er een gebied in het geheugen gemaakt dat het Volume Control Block (VCB) wordt genoemd.

Volumebitmap
------------
Hierin wordt vastgelegd welke logische blokken in het volume zijn toegewezen aan bestanden. De volumebitmap bevat één bit voor elk toewijzingsblok op het volume. Als het blok is toegewezen, is de bit bezet. Als het blok niet is toegewezen, is de bit vrij.

Catalogusbestand
----------------
Dit bestand bevat hiërarchische gegevens betreffende de relatie en structuur van bestanden en mappen en hun locatie op het volume.

Het catalogusbestand bevat de bovenliggende directory voor elk bestand. Om het volledige pad te kunnen bepalen, wordt steeds gezocht naar de bovenliggende directory tot het hoofdniveau is gevonden. Het catalogusbestand en Extents-bestand hebben beide de vorm van een "B-Tree" (en vormen de bron van alle B-Tree-fouten).
Verderop in dit bestand vindt u een bespreking van B-Trees.

Extents-bestand
---------------
Een "Extent" is een aaneengesloten reeks logische blokken die zijn toegewezen aan een bestand. Het Extents-bestand (ook Extents Overflow-bestand genoemd) houdt de locatie bij van records die niet aaneengesloten konden worden opgeslagen. Deze gegevens worden gebruikt voor het vinden van alle delen van een bestand dat wordt geladen. Een deel van de Extent-gegevens bevindt zich in het MDB en VCB. De eerste drie Extents worden altijd samen met het VCB in het geheugen bewaard.

Gezien de bovenstaande informatie is het begrijpelijk waarom het optimaliseren of defragmenteren van een schijf zo effectief is. Door bestanden aaneen te laten sluiten, bespaart u niet alleen zoektijd, maar kunnen ook records voor het vinden van niet-aaneengesloten bestanden worden verwijderd, omdat alle benodigde informatie al in het geheugen staat.

Alle items voorafgaand aan het Catalogus- en Extents-bestand zijn aaneengesloten. Het Catalogus- en Extents-bestand kunnen overal op het volume staan en zijn niet aaneengesloten.

Het Catalogus-bestand bevat ook Finder-gegevens voor elk bestand. Deze informatie bestaat uit:

Type - Geeft aan welk bestandstype het betreft.
Creator - Code van het programma waarmee het bestand is gemaakt.
Finder-flags - Dit zijn gegevensitems (bits) die kunnen worden in- of uitgeschakeld.

De Finder houdt hier rekening mee als een bestand worden gelezen. De specifieke typen Finder-flags zijn:

* isInvisible: bestand verschijnt niet in lijsten in een dialoogvenster of andere vensters.
* hasBundle: bestand is verbonden aan een speciaal symbool.
* nameLocked: gebruiker kan geen andere naam aan het bestand geven of er een ander symbool aan toekennen.
* isStationery: bestand is een sjabloondocument.
* isShared: gemeenschappelijk bestand in een netwerk.
* hasCustomIcon: bestand heeft een eigen, speciaal symbool.

Plaats van de bestanden in een venster: relatieve positie in het venster als het bestand wordt geopend. Directory die bestand bevat: het directorypad van het bestand.

De rest van het volume bevat programma-/gegevensbestanden, het Catalogus-bestand, het Extents Overflow-bestand en vrije ruimte.

Bespreking van B-Trees
======================
Catalogus- en Extents-bestanden zijn geordend in B-Trees, een structuur die zorgt voor een optimale leessnelheid.

Beide typen bestanden bevatten alleen "data forks"; er zijn geen "resource forks".
De locatie van het begin van de B-Tree van het Catalogus- en Extents-bestand bevindt zich aan het begin van de MDB. Deze locatie wordt in het geheugen bewaard.

Hieronder ziet u een vereenvoudigd diagram die de schijfstructuur van de Catalogus- en Extents-bestanden weergeeft:
(Byte)    Data Fork

0..............................
          Node 0             . Header Node
512............................
          Node 1             ._____________________
1024...........................                    |
          Node 2             .
Substructuur node  |
n..............................                    |
          Node 3             .                    |
...............................         .......................
             .                         .   Node Descriptor   .
             .                         .......................
             .                      ---.     Record 0        .
             .                      |  .......................
             .                      |  .     Free Space      .
             .                      |  .......................
             .                      |  . Offset to Free Space.
             .                      |  .......................

             .                      |  . Offset to Record 0  .
          Node n/512                |  .......................
                                    |
                     ..........................................................
                     .
Sleutel    | Recordsleutel | Recordgegevens of pointer .
                     .
Lengte     |               |                           .
                     .
Waarde     |               |                           .
                     . (255 bytes)|               |                           .
                     ............................................. ............


Hieronder ziet u een voorbeeld van een B-Tree-structuur:

Header Node      |Pointer1|Pointer2|Pointer3|
                              |
                              |
Index Nodes      |Pointer26|Pointer2|Pointer41|
                              |
                              |
Leaf Nodes       |(13) Data|(2) Data|(16) Data|

De complexiteit van B-Tree-structuren verklaart hoe en waarom er fouten optreden. Als een B-Tree beschadigd raakt, wordt foutieve informatie in de File Manager ingelezen en kunnen de bestanden waarnaar wordt verwezen ook beschadigd raken.
Daarom is het van essentieel belang om regelmatig gebruik te maken van Schijf-EHBO of een vergelijkbaar hulpprogramma.

Het type fouten dat Schijf-EHBO opspoort
=========================================
Hieronder ziet u een aantal fouten dat door Schijf-EHBO kan worden opgespoord:

Keys defect
-----------
B-Tree-records of records waarnaar wordt verwezen, zijn beschadigd.

Beschadigde leaf-node/index-node
--------------------------------
Er is een node gewijzigd zodat deze niet juist verwijst naar andere nodes of records.

B-Trees beschadigd
------------------
Dit spreekt voor zich - de B-Trees zijn beschadigd.

Volumebitmap onjuist
--------------------
De volumebitmap bevat geen juiste weergave van het gebruik van toewijzingsblokken op de schijf. Schijf-EHBO repareert dit en het Extents-bestand door de twee met elkaar te vergelijken en vervolgens het resultaat te vergelijken met de daadwerkelijke toewijzingsblokken op de schijf.

Bundle-bits moeten opnieuw worden ingesteld
-------------------------------------------
De Bundle-bitflag moet voor sommige bestanden opnieuw worden ingesteld. (Mogelijk moeten ook andere flags opnieuw worden ingesteld).

Opmerking: als Schijf-EHBO meldt 'Er zijn problemen gevonden die niet met Schijf-EHBO kunnen worden hersteld', raden wij u aan een reservekopie te maken van belangrijke documenten en bestanden en de harde schijf opnieuw te initialiseren.
Laatst gewijzigd op: 3-okt-2008
  • Laatst gewijzigd op: 3-okt-2008
  • Artikel: TA21692
  • Aantal keer bekeken:

    94

Aanvullende informatie over productondersteuning