- Jul 19, 2021
I just finished module two, video 4 of the Windows Kernel Programming videos that I recommenced the other day. I’ve watched further long than that, but I back track and follow along while writing the code. After I’ve mastered this series I might try and write the programs in masm32. I wrote the beep application that uses the \\Device\\Beep and puts that device in a UNICODE_STRING, opens a handle and later use DeviceIoControl to make the system beep. I also successfully back ported it to VS2008 on Win7. So my question is relates to Steve’s on-time os for SR7, I searched the docs for DeviceIoControl and I found a function RTFDeviceIoControl, another page says the function that is emulating DeviceIoControl under on-time os is a dummy and does nothing and just returns. I think I do understand DeviceIoControl at this point and it has input and output buffers under windows and it has control codes that I think are defined by the driver. So will future spin rites be using the DriveIoControl function? Like a SR driver? I know from Pavel that one can use ReadFile and WriteFile also for drivers. The RTFDeviceIoControl function is not the same as windows, the signure does not include input and output buffers and rather than a handle it uses a pointer? It really looks like it only does four things based on the control codes. I was just wondering because I thought Steve said the reason he went with on-time os was it is what he already knows from Windows and because future SR would be easier to move to Windows. Something like SR would certainly need a Windows Driver to work. Just trying to connect the dots with all the information in my head. Thanks.