Books FYSOS: Media Storage Devices Books Benjamin David Lunt BuyAvailable at Amazon, Kindle[5], or your favorite online book sourceBuy Volume Three of a series of books on Operating System Design Please write a reviewPlease go to the bottom of this page and write a review. Thank you.Please write a review Errata View the Errata and additional notes Errata Comments See below for customer comments Comments
FYSOS: Media Storage DevicesThis book is Volume 3 of the series, FYSOS: Operating System Design, and will show the reader how to detect, initialize, and communicate with three of the most common media hardware devices, the Floppy Disk Controller, the IDE Hard Disk Controller, and the SATA (AHCI) Hard Disk Controller. The reader will learn how to detect the controller, what type of controller it is, initialize it to default values, detect attached devices, and then communicate with those devices, such as reading and writing to the attached media. All of this is done without any outside help, such as operating system calls or the help of the BIOS. The reader will learn how to communicate with the hardware directly, reading and writing to the system bus to achieve these tasks. The companion CD-ROM contains complete source code of each example within the book, showing how to accomplish these tasks. This book, and its companion series of books, does not expect you to build the next great wonder of the computer world. It simply will help you with your interest in controlling the computer's hardware, from the point the BIOS releases execution to your boot code to the point of a fully working Graphical User Interface. It is not required that you know much about operating system design, though a good knowledge of C Programming Language and a moderate knowledge of an Intel/AMD x86 computer's hardware is expected to use this book.

Information Information in the book or on the CD-ROM may include Information
228 pages • Detecting FDC Controllers • Identifying the type and brand of FDC • Communicating with the FDC controller and any attached drives • Identifying the floppy disk's media format • Detecting ATA Controllers • Using the IDE interface to Identify an attached drive • Using the IDE interface to read and write sectors using PIO and DMA transfers • Detecting SATA Controllers • Using the AHCI interface to Identify an attached drive • Using the AHCI interface to read and write sectors using DMA transfers • Includes details, quirks, and other information about hard drives and their controllers • Does NOT include USB media devices, since these types of devices are detailed in Volume 8.
CD Included The Companion CD-ROM CD Included
The companion CD-ROM will not be available with the purchase of the book via book outlets and online shopping. However, with any form of proof of purchase[1], the CD-ROM can be sent to you as an .ISO image via email, or sent as a CD-ROM via USPS. (A small postage fee may be applied). I can be contacted at fys [at] fysnet [dot] net. [1] A proof of purchase would consist of, but not limited to: - Confirmation email from seller, copied/pasted to a request email to the address above - Image of a register receipt sent as an attachment to the address above - Randomly chosen chapter/page/paragraph/sentence-within-that-paragraph combination (chosen by you) I am just trying "to keep the honest honest". You know, once you have the book, I will send you the ISO. I don't question whether you have it or not. :-)
Table of Contents Table of Contents Table of Contents
Introduction Part 1 1. Media Storage Devices Overview 2. The PCI Hardware Part 2 3. The Floppy Disk Controller 4. Floppy DMA and Media Type Detection Part 3 5. The IDE Hard Disk Controller 6. The ATA and ATAPI Commands 7. Identifying a Device 8. Sending Packet Commands 9. PIO verses DMA Transfers 10. ATA IDE Driver Initialization Part 4 11. The SATA Controller 12. The AHCI Interface 13. The Command List Structure 14. Sending SATA Commands Appendix A - Disc Contents Appendix B - Included Utilities/Source Code Appendix C - Tables and Figures Appendix D - Command Sets Appendix E - Other FDC Commands Appendix F - PCI Bus Master Timing Appendix G - PCI AHCI Enabling Appendix H - Notes and Other Comments Appendix X - For More Information Bibliography A more detailed Table of Contents (pdf), stripped directly out of the book.
User Comments User Comments User Comments