Dr. Wolfgang Koch tud. mts. vendég előadása - „Device Drivers and Asynchronous I/O”

Dr. Wolfgang Koch tud. mts.           vendég előadása - „Device Drivers and           Asynchronous I/O”
10/01

2008. október 01.

Északi Tömb 0.99-es terem

10/01

2008. október 01. -

Északi Tömb 0.99-es terem


Vendégelőadás „Device Drivers and Asynchronous I/O” Előadó: Dr. Wolfgang Koch Friedrich Schiller University Jena, Germany Department of Mathematics and Computer Science Abstract: Asynchronous Input/Output means, a program merely starts a time-consuming I/O request, but instead of waiting for the result it is free to perform useful tasks. In order to enable asynchronous I/O, a device driver must put a request on a wait queue if it cannot be served immediately. In this case the driver returns a status that marks the request as pending and returns the requested data as soon as they are available to the driver. To avoid indefinite waiting the program can cancel pending requests. In Linux asynchronous I/O till now is not very popular. First attempts were made not until kernel 2.6. The Microsoft WDM (Windows Driver Model) has been the standard for device drivers for MS Windows (W2K and XP, but also NT and even W98 and Vista) for more than 10 years. But things are complicated, especially when allowing for layered drivers, Plug & Play and power management as it is necessary for USB devices. Thus Microsoft designed the Windows Driver Foundation (WDF – first release 12/2005). WDF is an abstraction that sits on top of WDM and provides among other things default handling for Plug and Play and power management. In my talk I want to show what implications asynchronous I/O has on the driver side and in the I/O Manager, and what must be done in the driver to support asynchronous I/O. Furthermore I demonstrate how to implement a bullet-proof cancel-safe wait queue in WDM.