7 Anhang

 

7.1 Optionen in der Datei BOOT.INI zurück nach oben nächster Abschnitt Inhaltsverzeichnis

/DEBUG - aktiviert Kernel-Mode Debugging

/NODEBUG - Debugging ausgeschaltet (Standard)

/DEBUGPORT=X - gibt den seriellen Port an

(bei 80x86 Rechnern ist COM2 Standard)

/BAUDRATE=X - gibt die Baudrate der Verbindung an

(19200 Baud ist Standard)

/CRASHDEBUG - Debugger wird nur im Fall eines Systemcrashs aktiviert

/MAXMEM=X - gibt die maximale Größe des Speichers für das System an

(X darf die Größe des wirklichen Speichers nicht über-

schreiten, Angabe in MB)

/SOS - Anzeige jedes geladenen Moduls während des Bootvorgangs

/BASEVIDEO - Sytem benutzt den Standard VGA Treiber

 

Beispiel einer boot.ini
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINNT40

[operating systems]

; normale Version
multi(0)disk(0)rdisk(0)partition(2)\WINNT40="Windows NT Workstation, Version 4.0" 

; normale Version mit Standard VGA Treiber und Anzeige aller geladenen Module
multi(0)disk(0)rdisk(0)partition(2)\WINNT40="Windows NT Workstation, Version 4.0 [VGA-Modus]" /basevideo /sos

; Debug Version, Verbindung über COM2 mit 115200 Baud

multi(0)disk(0)rdisk(0)partition(3)\WINNT40A="Windows NT Workstation (Checked)" /DEBUG /DEBUGPORT=COM2 /BAUDRATE=115200

; Debug Version, Verbindung über COM2 mit 19200 Baud, Anzeige aller
; geladenen Module, Benutzung des Standard VGA Treibers

multi(0)disk(0)rdisk(0)partition(3)\WINNT40A="Windows NT Workstation (Checked) [VGA mode]" /DEBUG /basevideo /sos 

; startet Windows 95
C:\="Microsoft Windows 95" 

 

7.2 Daten von IDT_Look zurück nach oben nächster Abschnitt Inhaltsverzeichnis

     Aladin BasysGate BIG_WWW Hugo_C  STAT_02 STAT_13  OTTO  SanderD  Notebook 
IRQL     
 1     3D               3D 
 2     41               41
 3
 4     51               51                                      51
 5     61               61                                      61
 6     71               71
 7     81/82            81/82                                   81
 8     91/92            91/92                                   91/92
 9     A2               A2                                      A1
10     B1               B1                                      B1/B2
11
12              3F      
13                              3E      3E              3E              3E
14
15              3C                      3C      3C      3C              3C
16              3B              3B      3B
17                                              3A                      3A
18                                              39      39
19
20              37                                      37              37
21              36              36      36      36      36              36
22                                              35                      35
23              34              34      34      34      34              34
24                                                      33
25              
26              31              31      31      31      31              31
27      C1      38      C1      38      38      38      38      C1      38
28      D1      30      D1      30      30      30      30      D1      30
29      E1              E1                                      E1
30      FE/FD           FD/FE                                   FD/FE
31      1F/FF   32      1F/FF   32      32      32      32      1F/FF   32

255     50              50                                      50

DPL3    2A-2E   2A-2E   2A-2E   2A-2E   2A-2E   2A-2E   2A-2E   2A-2E   2A-2E


Systeme:

ALADIN          -       Dual Pentium II 266 MHz, NT 4.0 (free) SP3
BasysGate       -       Pentium II 233 MHz, NT 4.0 (free) SP3
BIG_WWW         -       Dual Pentium II 266 Mhz, NT 4.0 (free) SP3
Hugo_C          -       AMD K6 200 Mhz, NT 4.0 (checked) SP1
Stat_02         -       Pentium 166 MHz, NT 4.0 (free) SP3
Stat_13         -       Pentium Pro 200 Mhz, NT 4.0 (free) SP2
OTTO            -       Pentium II 300 MHz, NT 4.0 (free) SP4
SanderD         -       Dual Pentium 166 MHz, NT 4.0 (free), SP3
Notebook        -       Pentium 200 MHz, NT 4.0 (free), SP3

SP - Service Pack

Es wurden weitere Einprozessorsysteme getestet, die Ergebnisse unterscheiden
sich jedoch nicht von den anderen Systemen.

 

7.3 Quellcodes zurück nach oben nächster Abschnitt Inhaltsverzeichnis

Die Quellcodes aller Programme und Treiber befinden sich auf der beigelegten CD. Zusätzlich wurden die ausführbaren Versionen der Programme mit auf die CD kopiert.

In der Internetversion findet man den Inhalt der CD unter Downloads.

 

7.4 Abkürzungen zurück nach oben nächster Abschnitt Inhaltsverzeichnis

ACL

Access Control List

APC

Asynchronous Procedure Call – Asynchroner Prozeduraufruf

API

Application Programming Interface

DMA

Direct Memory Access

DPC

Deferred Procedure Call – Verzögerter Prozeduraufruf

DPL

Descriptor Privilege Level

FSD

Files System Driver - Dateisystemtreiber

IDT

Interrupt Descriptor Table

IDTR

Interrupt Descriptor Table Register

ISR

Interrupt Service Routine

IRQL

Interrupt Request Level

IOCTL

I/O Control Code

MDL

Memory Descriptor List

NMI

Non Maskable Interrupt – Nicht Maskierbarer Interrupt

SEH

Structured Execption Handling – strukturierte Ausnahmebehandlung

VDD

Virtual Device Driver oder auch Virtual DOS Driver

 

7.5 Literaturverzeichnis zurück nach oben nächster Abschnitt Inhaltsverzeichnis

[Baker97] zurück nach oben Inhaltsverzeichnis

Baker, Art: "The Windows NT Device Driver Book"; Prentice Hall PTR; New Jersey 1997; ISBN 0-13-184474-1

[Brunelco96] zurück nach oben Inhaltsverzeichnis

Brunelco Electronic Engineering: "8 – Channel PC-Timer Revision 3.1 - User Manual"; 1996

[Custer93] zurück nach oben Inhaltsverzeichnis

Custer, Helen: "Inside Windows NT"; Microsoft Press; Redmont 1993;

ISBN 1-55615-481-X

[DDK96] zurück nach oben Inhaltsverzeichnis

Microsoft: "Windows NT DKK Getting Started"; Hilfedatei ddkstart.hlp im Verzeichnis \ddk\hlp; 1996

[Hamilt96] zurück nach oben Inhaltsverzeichnis

Hamilton, David; Williams, Mickey: "Windows NT 4 Programmierung für Insider";

Sams; Haar bei München 1996; ISBN 3-87791-886-7

[History98] zurück nach oben Inhaltsverzeichnis

http://windowsnt.miningco.com; 15.09.1998

[IntelISR97] zurück nach oben Inhaltsverzeichnis

Intel: "Intel Architecture Software Developer‘s Manual, Volume 2: Instruction Set Reference"; Intel Corporation 1996,1997

[IntelSPG97] zurück nach oben Inhaltsverzeichnis

Intel: "Intel Architecture Software Developer‘s Manual, Volume 3: System Programming Guide"; Intel Corporation 1996,1997

[Kernel96] zurück nach oben Inhaltsverzeichnis

Microsoft: "Kernel-Mode Drivers"; aus der Windows NT DDK Dokumentation;1996

[Lauer96] zurück nach oben Inhaltsverzeichnis

Lauer, Thomas: "Professionelle Win32-Programmierung"; International Thomson Publishing; Bonn 1996; ISBN 3-8266-2664-8

[Osterholt95] zurück nach oben Inhaltsverzeichnis

Osterholt, Wim: "XT, AT and PS/2 I/O port addresses"; 1995

[OSR98] zurück nach oben Inhaltsverzeichnis

Open System Ressources; http://www.osr.com; 05.11.1998

[ProgGd96] zurück nach oben Inhaltsverzeichnis

Microsoft: "Programmer‘s Guide"; aus der Windows NT DDK Dokumentation;1996

 

[Registry97] zurück nach oben Inhaltsverzeichnis

Microsoft: "Technical Reference to the Windows Registry"; aus dem "Microsoft Windows NT Server Resource Kit"; 1997

[Roberts96] zurück nach oben Inhaltsverzeichnis

Roberts, Dale: "Direct Port I/O and Windows NT"; Dr. Dobb’s Journal Mai 1996

[Roberts98] zurück nach oben Inhaltsverzeichnis

Roberts, Dale: "Interrupt Behavior in Windows NT"; Dr. Dobb’s Journal; April 1998

[Russ97a] zurück nach oben Inhaltsverzeichnis

Russinovich, Mark: "Inside NT’s Interrupt Handling"; Windows NT Magazine; Ausgabe November 1997

[Russ97b] zurück nach oben Inhaltsverzeichnis

Russinovich, Mark: "Inside the Blue Screen"; Windows NT Magazine; Ausgabe Dezember 1997

[Solom98] zurück nach oben Inhaltsverzeichnis

Solomon, David: "Inside Microsoft Windows NT" 2.Auflage; Microsoft Press; Unterschleißheim 1998; ISBN 3-86063-435-6

[Stiller97] zurück nach oben Inhaltsverzeichnis

Andreas Stiller, Matthias Withkopf: "Direkte Zugriffe unter Windows NT 4.0 und ein entfesselter Cyrix 6x86"; c’t – Magazin für Computer Technik; Ausgabe 1/1997; Verlag Heinz Heise

[SysIntern98] zurück nach oben Inhaltsverzeichnis

http://www.sysinternals.com; 01.12.1998

[Tennberg98] zurück nach oben Inhaltsverzeichnis

Tennberg, Patrick: "Windows NT Device Driver Toolkits", Dr. Dobb’s Journal; März 1998

[Tischer92] zurück nach oben Inhaltsverzeichnis

Tischer, Michael: "PC intern 3.0"; Data Becker; Düsseldorf 1992; ISBN 3-89011-591-8

[Visual98] zurück nach oben Inhaltsverzeichnis

Microsoft: "MSDN Library Visual Studio 6.0"; 1998

[WinFAQ98] zurück nach oben Inhaltsverzeichnis

Savill, John: "Windows NT Frequently Asked Questions; http://www.ntfaq.com;01.12.1998

[WinSpecial98] zurück nach oben Inhaltsverzeichnis

"Windows ins System geschaut"; win Windows NT Special; Vogel Verlag und Druck GmbH & Co. KG; 1998

[WorkGuide97] zurück nach oben Inhaltsverzeichnis

Microsoft: "Windows NT Workstation Resource Guide"; aus dem "Microsoft Windows NT Workstation Resource Kit"; 1997

 

7.6 Abbildungsverzeichnis zurück nach oben nächster Abschnitt Inhaltsverzeichnis

Abbildung 2.2.1-1: Aufbau Windows NT

Abbildung 2.2.5-1: Ablauf der Ausnahmebehandlung

Abbildung 3.3.3-1: Interrupt Behandlung

Abbildung 3.3.4-1: IDT Descriptor und IDT Register

Abbildung 3.3.6-1: I/O Verarbeitung unter Windows NT

Abbildung 4.1.2-1: Verzeichnisstruktur des Build Tools

Abbildung 4.4.1-1: IRP Aufbau

Abbildung 4.4.2-1: Das Treiberobjekt

Abbildung 4.4.3-1: Das Geräteobjekt

Abbildung 4.5.1-1: Aktivierung des Kerneldebuggings in WinDbg

Abbildung 4.5.2-1: Der Blue Screen of Death

Abbildung 4.5.2-1: Eventlogging

Abbildung 4.6.1-1: Aufbau der Message Codes

Abbildung 4.6.5-1: Das IO_ERROR_LOG_PACKET

Abbildung 5.3.4-1: Das Brunelco Control Center

 

7.7 Tabellenverzeichnis zurück nach oben nächster Abschnitt Inhaltsverzeichnis

Tabelle 3.3.1-1: IRQLs (Vergleich Alpha - x86)

Tabelle 4.1.1-1: Systemvoraussetzungen der Entwicklungsrechner

Tabelle 4.1.3-1: Registry Einträge

Tabelle 4.5.1-1: WinDbg Kommandos

Tabelle 4.6.5-1: Betriebssystemfunktionen im Kernelmodus (aus [Baker97])

Tabelle 5.3.2-1: Funktionscodes der Brunelco Timer Card

 

7.8 Hilfsmittel zur Erstellung der Diplomarbeit zurück nach oben Inhaltsverzeichnis

Zur Erstellung der Anwendungen und Treiber wurden folgende Werkzeuge eingesetzt:

Folgende Rechnersysteme standen zur Entwicklung der Treiber zur Verfügung:

Entwicklungssystem:

Zielsystem:

 

Die Diplomarbeit wurde mit Microsoft Word 97 geschrieben. Alle Grafiken wurden mit Paint Shop Pro 5.0 erstellt.





written 1998/1999 by Guido Wischrop
all rights reserved