strik: danke für die Infos. Das mit dem Mehrprozessor-Kernels war mir klar, dass die Dateien aber in sich verlinkt sind... naja, ist wohl historisch gewachsen.
Nun ja, es wird vielleicht noch klarer wenn man bemerkt, dass z.B. NTOSKRNL.EXE auch Funktionen wie HalDispatchTable(), HalExamineMBR() und HalPrivateDispatchTable() exportiert, andererseits HAL.DLL folgende Funktionen (XP SP3, fully patched, mit "objdump -x hal.dll" ermittelt, dann unter "Export table" schauen):
- ExAcquireFastMutex (Ex... = Executive)
- ExReleaseFastMutex
- ExTryToAcquireFastMutex
- IoAssignDriveLetters (Io... = IO Manager, eigentlich Aufgabe des Kernels)
- IoFlushAdapterBuffers
- IoFreeAdapterChannel
- IoFreeMapRegisters
- IoMapTransfer
- IoReadPartitionTable
- IoSetPartitionInformation
- IoWritePartitionTable
- KdComPortInUse (Kd... = Kernel Debugger)
- KeAcquireInStackQueuedSpinLock (Ke... = Kernel)
- KeAcquireInStackQueuedSpinLockRaiseToSynch
- KeAcquireQueuedSpinLock
- KeAcquireQueuedSpinLockRaiseToSynch
- KeAcquireSpinLock
- KeAcquireSpinLockRaiseToSynch
- KeFlushWriteBuffer
- KeGetCurrentIrql
- KeLowerIrql
- KeQueryPerformanceCounter
- KeRaiseIrql
- KeRaiseIrqlToDpcLevel
- KeRaiseIrqlToSynchLevel
- KeReleaseInStackQueuedSpinLock
- KeReleaseQueuedSpinLock
- KeReleaseSpinLock
- KeStallExecutionProcessor
- KeTryToAcquireQueuedSpinLock
- KeTryToAcquireQueuedSpinLockRaiseToSynch
- KfAcquireSpinLock (Kf... = Kernel)
- KfLowerIrql
- KfRaiseIrql
- KfReleaseSpinLock
Zu Kf... vs. Ke...: Die Ke... Funktionen werden normalerweise direkt aufgerufen. Die Kf... - Funktionen sind hingegen undokumentiert. Meistens werden sie über dokumentierte Makros aufgerufen. z.B:
Man erkennt schon, dass HAL und Kernel stark miteinander verzahnt sind und nicht einfach beliebig austauschbar.
Zitat- Zuerst wird der HAL geladen, korrekt? IIRC sieht das aber im Log andersrum aus. Aber wenn er auf einer Partition keinen Systemdateien findet, dann kommt ja die Fehlermeldung, dass er den HAL net gefunden hat.
Ich bin kein Spezialist hier. Da aber HAL.DLL und NTOSKRNL.EXE jeweils ohne den andere nicht können, ist die Reihenfolge eigentlich egal. IIRC werden sie beide von NTOSLDR geladen.
Aha, hier findet sich das: Bitte melde dich an, um diesen Link zu sehen.
Oder auch hier: Bitte melde dich an, um diesen Link zu sehen.. Beachte, dass der Technet-Artikel zwar angibt, dass der HAL unterschiedlich sein kann, sich über NTOSKRNL aber ausschweigt.
Zitat
- Wieso kann er im abgesicherten Modus mit falschem Kernel booten? Nach den oberflächlichen Infos bei MS zu urteilen, verzichtet er doch eigentlich nur auf (spezielle) Gerätetreiber. Aber da scheint ja auch so noch einiges andere nicht geladen zu werden.
Ich bin nun absolut kein Spezialist für den Safe-Mode, auch sind die Informationen darüber sehr spärlich. Daher kann ich diese Frage nicht beantworten.
ZitatTechnet und die Usegroups sind ja mittlerweile auch eher mau geworden in den letzten vier, fünf Jahren. Jedenfalls kommt mir das so vor.
Nun ja, immer mehr Leute wandern von den Usegroups zu irgend solchen komischen Foren ab. Dort ist allerdings das Rauschen so extrem hoch, dass viele wieder genervt abwandern. Ein Grund mehr, warum ich Foren nicht so mag.
Gruß
Spiro