Summary: An extensive discussion of the components that comprise a BSP that you must develop, like bootloaders, an OAL, KITL, and device drivers, as well as tips on writing a BSP that can be quickly commercialized, is secure, performance optimized, and power efficient.




1. What is a BSP?
* BSP Bootloader
* BSP IPL and ULDR
* BSP OAL – what is shared between Bootloader
* BSP Drivers
* KITL
2. Production Quality Drivers
3. Production Quality OAL – benefits of adhering to this model, directory structure.
4. Features of a Commercialization Ready BSP

5. Writing a code secure BSP
* Threat Modeling
* Secure Boot

6. Writing a Performance optimized BSP (24524)
* Performance optimized OAL
* Performance optimized Drivers
* Writing and running a performance test

7. Writing a Power Efficient BSP (24526)
* Get your tiny kernel to the lowest power state early in development. Then make sure each new driver does not negatively impact power before it is checked in.
* Scenarios around PM testing states to get in. running media. Voip.
* Scenarios around suspend/resume – how drivers work.
* Writing Power-Efficient Drivers
* Measuring Power Management

8. Required IOCTLs
* CE required OAL IOCTL list
* WM required OAL IOCTL list

9. BSP and OAL data structures

10. Writing Power Efficient Drivers

11. Using an OAL Tiny Kernel to get KITL up and running

12. Mapping of CETK and LTK tests to features (24536)

13. OAL benchmarking procedures

14. Driver load and unload tool (24540)

15. Optimizing the use of virtual memory
*Reducing heap allocations
*Using shared memory (CeHeapCreate)
*Reducing and consolidating DLLs
*Moving DLLs between MODULES and FILES to optimize DLLs in Slot 1 (for OEMs)

16. A2DP - Audio Driver/Bluetooth interaction

17. HALFlat – Getting a display driver up and running quickly

18. Prevention of data loss on critical off – use of TFAT (24548)

19. Writting User Mode Drivers(23943)





Go up to Big Book of BSP

Thank you for contributing to this BSP Wiki. To ensure your comments and concerns receive proper exposure, include bspwiki""@""microsoft"".""com when providing feedback or topical suggestions.



Microsoft Communities