CN17500C/N1750 - Building OS/2 Device Drivers: Difference between revisions
Jump to navigation
Jump to search
Created page with " 4 days, hands-on labs Public, private You'll learn to develop, compile, install, and test device driver programs for the OS/2 1.3 and 2.X platforms. How you will benefit..." |
No edit summary |
||
Line 1: | Line 1: | ||
= Course N1750: Building OS/2 Device Drivers = | |||
==Synopsis== | |||
You'll learn to develop, compile, install, and test device driver programs for the OS/2 1.3 and 2.X platforms. | You'll learn to develop, compile, install, and test device driver programs for the OS/2 1.3 and 2.X platforms. | ||
How you will benefit | ==How you will benefit== | ||
You'll be able to: | |||
* Develop, compile, install, and test device driver programs | |||
* Understand programming and operational characteristics common to both character and block device drivers | |||
* Grasp the structure and operation of OS/2 device drivers | |||
* Design and implement an OS/2 device driver for a peripheral | |||
* Understand bimodal operation (real and protected-model), ROM BIOS compatibility support, interrupt handling, serialization, and the use of device helper services | |||
==Topics== | |||
* Device Driver Introduction | |||
** dd def PMD's, BDD's, PDD's, VDD's (char v. block) | |||
** Real versus protected | |||
** 16-bit segmented model - enhanced for OS/2 2.0 | |||
* Operation | |||
** task time (init) | |||
** interrupt time (timer, IRQ's) | |||
* Structure | |||
** Device header | |||
*** Device attribute | |||
** Strategy entry point | |||
** Initialization, command 0 (special case) | |||
*** Ring 3 | |||
*** Application context | |||
*** IOPL OK | |||
*** Some API's available | |||
*** Some development helpers | |||
** Sample code fragments | |||
* OS/2 Strategy Commands | |||
- | * Tools | ||
- | ** MASM | ||
** ASDT - demo | |||
** ASDTSYM | |||
** IBM C/2 | |||
** LINK 16-bit | |||
** Kernel debugger/ASDT | |||
* OS/2 Device Helpers | |||
* Using External Interrupts | |||
* Designing Block Device Drivers | |||
* Drivers That Use ABIOS | |||
** Device ID | |||
** Logical ID | |||
* OS/2 32-bit Enhancements | |||
** Using 32-bit code | |||
** Using 32-bit device helpers | |||
* Design Tips | |||
** Performance | |||
** 3 MS rule | |||
** Interrupt rules | |||
** Testing | |||
* Device Helper Reference | |||
* Demo Device Driver | |||
* Demo Device Driver Using C | |||
- | * Application/System Debug Tool - ASDT Reference | ||
* Lab Exercises | |||
** Character driver with initialization context only | |||
** Character driver with strategy commands, open, and write | |||
*** Write under interrupt | |||
*** Handling multiple overlapping requests | |||
** ABIOS with hardware interrupts | |||
==Prerequisites== | |||
You should have experience programming in Assembler or C language. You should also have completed "OS/2 2.X for Software Developers" (N1740) or have equivalent programming experience. | |||
==Download== | |||
N/A | |||
[[Category:Courseware]] | |||
Revision as of 14:09, 1 June 2016
Course N1750: Building OS/2 Device Drivers
Synopsis
You'll learn to develop, compile, install, and test device driver programs for the OS/2 1.3 and 2.X platforms.
How you will benefit
You'll be able to:
- Develop, compile, install, and test device driver programs
- Understand programming and operational characteristics common to both character and block device drivers
- Grasp the structure and operation of OS/2 device drivers
- Design and implement an OS/2 device driver for a peripheral
- Understand bimodal operation (real and protected-model), ROM BIOS compatibility support, interrupt handling, serialization, and the use of device helper services
Topics
- Device Driver Introduction
- dd def PMD's, BDD's, PDD's, VDD's (char v. block)
- Real versus protected
- 16-bit segmented model - enhanced for OS/2 2.0
- Operation
- task time (init)
- interrupt time (timer, IRQ's)
- Structure
- Device header
- Device attribute
- Strategy entry point
- Initialization, command 0 (special case)
- Ring 3
- Application context
- IOPL OK
- Some API's available
- Some development helpers
- Sample code fragments
- Device header
- OS/2 Strategy Commands
- Tools
- MASM
- ASDT - demo
- ASDTSYM
- IBM C/2
- LINK 16-bit
- Kernel debugger/ASDT
- OS/2 Device Helpers
- Using External Interrupts
- Designing Block Device Drivers
- Drivers That Use ABIOS
- Device ID
- Logical ID
- OS/2 32-bit Enhancements
- Using 32-bit code
- Using 32-bit device helpers
- Design Tips
- Performance
- 3 MS rule
- Interrupt rules
- Testing
- Device Helper Reference
- Demo Device Driver
- Demo Device Driver Using C
- Application/System Debug Tool - ASDT Reference
- Lab Exercises
- Character driver with initialization context only
- Character driver with strategy commands, open, and write
- Write under interrupt
- Handling multiple overlapping requests
- ABIOS with hardware interrupts
Prerequisites
You should have experience programming in Assembler or C language. You should also have completed "OS/2 2.X for Software Developers" (N1740) or have equivalent programming experience.
Download
N/A