[Toc][Index]

FSD Initialization

  
FSD initialization occurs at system initialization time. FSDs are loaded 
through the IFS= configuration command in CONFIG.SYS. Once the FSD has 
been loaded, the FSD's initialization entry point is called to initialize 
it. 
FSDs are structured the same as dynamic link library modules. Once an FSD 
is loaded, the initialization routine FS_INIT is called. This gives the 
FSD the ability to process any parameters that may appear on the 
CONFIG.SYS command line, which are passed as a parameter to the FS_INIT 
routine. A LIBINIT routine in an FSD will be ignored. 
OS/2 FSDs initialize in protect mode. Because of the special state of the 
system, an FSD may make dynamic link system calls at init-time. 
The list of systems calls that an FSD may make are as follows: 
oDosBeep 
oDosChgFilePtr 
oDosClose 
oDosDelete 
oDosDevConfig 
oDosDevIoCtl 
oDosFindClose 
oDosFindFirst 
oDosFindNext 
oDosGetEnv 
oDosGetInfoSeg 
oDosGetMessage 
oDosOpen 
oDosPutMessage 
oDosQCurDir 
oDosQCurDisk 
oDosQFileInfo 
oDosQFileMode 
oDosQSysInfo 
oDosRead 
oDosWrite 
  
The FSD may not call ANY FS helper routines at initialization time. 
Note that multiple code and data segments are not discarded by the loader 
as in the case of device drivers. 
The FSD may call DosGetInfoSeg to obtain access to the global and process 
local information segments. The local segment may be used in the context 
of all processes without further effort to make it accessible and has the 
same selector. The local infoseg is not valid in real mode or at interrupt 
time. 

Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs