Hi, I was wornding if any one could point me in the right direction for programing system files. The reason I am interested in this is because I was just wornding when they are called how/what runs them. I know the systme runs them but if i make a batch file and name it .sys if i try to run it I would get a message asking me what I want to use to run the file why is that, why dosen't the system try to run it an crash.
"Traditionally" (in DOS and Win 3.x era) MS had actually 3 types (I think) of .SYS files.
The first one is, a special executable file that loads the kernel/OS. There are only 2 files (I think) belongs to this type: IO.SYS and MSDOS.SYS.
Then I guess the most famous one is a text file (user-readable/editable) that contains the "instructions" to load important OS drivers. There are only 1 file (I think) in this type: CONFIG.SYS.
The last one is a driver, which is normally specified in CONFIG.SYS to be loaded as part of system startup. There are many files in this type such as ANSI.SYS, HIMEM.SYS, KEYBOARD.SYS, etc. You can find some drivers in newer Windows OS have .SYS extension.
I see sec_ware subscribed to this thread. He can point you better the right direction for "programming system files" (which I think you meant the 3rd type [drivers]).
I could point you to a more specific location if you tell us what OS?
For starters I'm assuming Windows:
MicroSoft Developers Network
Thanks for the Info and sorry about not saying what win version i am using winxp.
Those sys-files indeed are device drivers. You cannot execute them,
rather they are "executed" by the system (they are
loadable kernel-mode modules). If you want to know, which ones
are loaded, check your "device manager" (also activate "Show hidden
devices" in the view-menu) or check your registry
For example, the file c:\windows\system32\drivers\IPSec.sys is
responsible for the IPSec functionality.
Nowadays, the WDM is mostly used. As developer, you could use
the DDK. I like the multipart-introduction at codeguru or the