OS2.org Site Index - Feedback - Impressum
Sprachauswahl / Choose your Language News Software Hardware Projekte Forum Tipps Links Verschiedenes
Editorial Diskussion HelpDesk Umfrage
[Forum]
in nach (Erweiterte Suche)
[Forum]
( Archiv ) ( Neues Thema )

( Zeige die Threadübersicht ) ( Zur Startübersicht )
17.04.2002
Was und Wie: Zur Funktion des Treibers TESTCFG.SYS (von: GA, 13:45:52) ^
Ein unscheinbares Dasein hat ein Treiber, der mit der Installation von OS/2 in der CONFIG.SYS eingerichtet wird:

DEVICE=C:OS2BOOTTESTCFG.SYS

Intern wird gezeigt(build 10.032): Test Configuration Device Driver

Die Referenzen zu DOSCALLS.DLL sind:

DOSCALLS.59 (DosClose)

DOSCALLS.443

DOSCALLS.427

DOSCALLS.70 (DosOpen)

DOSCALLS.99 (DosDevIOCtl2)

Holger Veit hat sich in dem Artikel "32-Bit I/O With Warp Speed" ausgiebig mit dem Treiber befaßt. Siehe:

http://www.edm2.com/0307/32-bit-io.html

David Moskowitz hat in dem Buch "OS/2 2.1 Unleashed"(Sams Publishing, 1993, S. 103) über den Treiber geschrieben:

"TESTCFG.SYS is a special device driver(....) that is used by OS/2 2.1 to determine system configuration. It is used on non-IBM hardware to identify the bus type(e.g., ISA or EISA), BIOS information, and so on.

It is also used by the install programs for some applications and during device drive installation. It is documented in the OS/2 Device Driver Kit"(DDK, GA).

Im DDK sind im Verzeichnis DDKBASESRCDEVTESTCFG folgende Dateien vorhanden für den Treiber:

TESTCFG.C /* Hauptprogramm in C */
TESTCFG.DEF
TESTCFG.H
TESTCFGA.ASM
TESTCFGA.INC

Die Datei TESTCFG.C gibt weitere Auskunft über die Funktion des Treibers:

" TESTCFG is a device driver used for installation of OEM
* device drivers. Using TESTCFG services, it will be possible
* to determine hardware adapter presence.
* TESTCFG provides DosDevIOCtl services to ring 3 code. These
* services are:
*
* o Determine Bus Type
* o Determine POS IDs
* o Determine EISA IDs
* o Access Adapter Memory (make a copy for app to read)
* o Input/Output data through IO ports

Dabei ist ein Kommentar bessonders bemerkenswert:

"This routine is used to input from IO ports. Since applications
are ring 3, they can't do I/O. With this feature, they can let
TESTCFG do the work at ring 0. System ports are not allowed. Any
port below 0x100 is denied."

Hier wird somit darauf hingewiesen, daß Anwendungen, die im Ring 3(siehe Artikel von Holger Veit)
laufen, durch diesen Teil des Treibers Zugriff auf Funktionen im Bereich des Ring 0(Kernel Bereich) erhalten.


Einige weitere Informationen liefern die Kommentare in der Assembler-Routine TESTCFGA.ASM, wobei diese Teil interessant ist:


; GetProcessorType - Determine type of CPU processor
;
; Entry: none
;
; Exit: AX = bit flag result
; 001h = Intel 8086
; 002h = Intel 80286
; 004h = Intel 80386
; 008h = Intel 80486
; 010h = Intel 80586 PENTIUM
;

Hiermit wird die Ermittlung des Prozessor-Typs angezeigt!

Hinweis:

Alle Treiber, die nicht von IBM stammen und auf die I/O Kanäle zugreifen,
sollen bzw. müssen aus den oben genannten Gründen hinter(!) dem Treiber
TESTCFG.SYS in der CONFIG.SYS eingerichtet werden, damit sie für ihre
volle Funktionsfähigkeit die notwendigen und hinreichenden Informationen
erhalten.

Zusammenfassung:

Der Treiber TESTCFG.SYS liefert unbedingte Informationen für das OS/2
Betriebssystem aus dem BIOS, den Kanälen, den I/O Ports und verschiedenen
anderen wichtigen Hardwarekomponenten.

Ein Fehlen des Treibers oder eine Fehlfunktion hat schwerwiegendste Folgen
für die Funktionalität des Betriebssystems.

[ Leser: 144 ]

Ergänzung für die Aktivierung von "Selective Install" (von: GA, 16:18:41)
Bei der Aktivierung von "Selective Install" wird der Treiber TESTCFG.SYS aufgerufen, wenn dort spezifische Installationen erfolgen, die Daten aus dem Aufruf benötigen.

Fehlt also der Treiber TESTCFG.SYS in der CONFIG.SYS(bzw. hat Fehlfunktion), dann wird höchstwahrscheinlich diese Aktivierung von "Selective Install" mit einem Fehler abgebrochen werden.

18.04.2002
Re: Ergänzung für die Aktivierung von 'Selective Install' (von: Achim, 15:54:40)
Danke Gerhard,

Das war Balsam für meine Seele, nachdem ich vor ca. 3-4 Jahren an dem Problem hing, daß selective Install nicht mehr starten wollte.

Bin aber damals durch Try and Error zum Glück selbst drauf gekommen.

Ciao Achim

Man findet diese Information auch im Netz... (von: GA, 19:13:36)
wie z.B. so:

DEVICE=C:OS2TESTCFG.SYS

TESTCFG.SYS is used during the install process to test your systems configuration.
It is also used by the Selective Install process and during device driver in-
stallations.

<<=NOTE=>> Because this driver is also used by the Selective Install process, you
should not be deleted.

mit dieser Adresse:

http://macarlo.com/tuning.htm

Aber ich stimme dir schon zu, daß es eine gehörige Hartnäckigkeit und Erfahrung bedarf, beim Versagen von "Selective Install" genau zu dieser Information zu gelangen.

Nach meiner Ansicht ein markantes Beispiel, welche Tugenden und Eigenschaften neben "Erkenntnissen und Sachkunde" vorliegen müssen, um solche Typen von Störungen zu lösen.

( Zeige die Threadübersicht ) [ Version zum Drucken ] ( Zur Startübersicht )

Datum Thema
08.01.2017 *

*

Name: * eMail: Benachrichtigung

Mit * markierte Felder müssen ausgefüllt werden !


php.net OpenIT © 1998-2017 by WebTeam OS2.org