# I/O Techniques
## Official Documentation
- **Linux Kernel Documentation on I/O Schedulers**
  - [Link](https://www.kernel.org/doc/html/latest/block/index.html#io-schedulers)
- **Microsoft Docs on I/O Completion Ports**
  - [Link](https://learn.microsoft.com/en-us/windows/win32/fileio/i-o-completion-ports)
- **FreeBSD Handbook: I/O Scheduling**
  - [Link](https://docs.freebsd.org/en/books/handbook/disks/#disks-virtual)

## Research Papers
- **"Improving I/O Performance through Adaptive Caching and Prefetching" by Ali R. Butt et al. (2005)**
  - [Link](https://dl.acm.org/doi/10.1145/1060560.1060567)
- **"Aerie: Flexible File-System Interfaces to Storage-Class Memory" by Haris Volos et al. (2014)**
  - [Link](https://dl.acm.org/doi/10.1145/2592798.2592810)

## Additional Online Resources
- **IBM Knowledge Center on I/O Scheduling**
  - [Link](https://www.ibm.com/docs/en/aix/7.2?topic=scheduling-io)
- **Oracle Documentation on I/O Management**
  - [Link](https://docs.oracle.com/cd/E11882_01/server.112/e40540/iodesign.htm)
- **Red Hat Customer Portal on Tuning I/O Performance**
  - [Link](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/monitoring_and_managing_system_status_and_performance/assembly_optimizing-i-o-performance_monitoring-and-managing-system-status-and-performance)

## Books
- **"Systems Performance: Enterprise and the Cloud" by Brendan Gregg**
  - ISBN: 9780133390094
  - Provides in-depth coverage of system performance, including various I/O techniques and optimizations.

- **"Database Internals: A Deep Dive into How Distributed Data Systems Work" by Alex Petrov**
  - ISBN: 9781492040347
  - Includes detailed discussions on I/O techniques in the context of database systems.

- **"High Performance MySQL" by Baron Schwartz et al.**
  - ISBN: 9781449314286
  - While focused on MySQL, this book provides valuable insights into I/O optimization techniques applicable to various systems.

## For Deep Dive into Implementation
- **"Understanding the Linux Kernel" by Daniel P. Bovet and Marco Cesati**
  - ISBN: 9780596005658
  - Offers detailed explanations of Linux kernel internals, including I/O scheduling and techniques.

- **"Windows Internals, Part 2" by David A. Solomon et al.**
  - ISBN: 9780735684188
  - Provides in-depth coverage of Windows I/O system and advanced techniques.

## Standards
- **POSIX.1-2017 (IEEE Std 1003.1-2017)**
  - This standard defines the interface between operating systems and applications, including I/O operations.
  - Not freely available, but it's an authoritative source on standardized I/O interfaces.

- **T10 SCSI Storage Interfaces**
  - These standards define the SCSI protocol, which is crucial for many I/O techniques.
  - Available from the T10 Technical Committee website.
