Linux I/O Stack Diagram

Applications (Processes) direct I/O (O_DIRECT) VFS Page Cache nvme hooked in Device Drivers (hook in similar like stacked devices like mdraid/device mapper do) iomemory-vsl with module option LVM Block I/O Layer optional stackable devices on top of “normal” block devices – work on bios mdraid devicemapper drbd ... I/O Scheduler maps bios to requests deadlinecfq noop request-based device mapper targets dm-multipath SCSI mid layer virtio_blk iomemory-vsl Physical devices HDD SSD DVD drive Micron PCIe Card Fusion-io PCIe Card LSI RAID Adaptec RAID Qlogic HBA Emulex HBA ... anonymous pages (malloc) read(2) write(2) open(2) stat(2) chmod(2) ... BIOs (Block I/O) sysfs (transport attributes) /dev/vd* SCSI upper layer /dev/sda .../dev/sdb /dev/fio* SCSI low layer megaraid sas aacraid qla2xxx ...libata ahci ata_piix ... lpfc Transport Classes scsi_transport_fc scsi_transport_sas scsi_transport_... lvm /dev/fio* /dev/nvme#n# mtip32xx /dev/rssd* The Linux I/O Stack Diagram (version 0.1, 2012-03-06) Created by Werner Fischer and Georg Schönberger License: CC-BY-SA 3.0, see block based FS ext2 ext3 btrfs ext4 xfs ifs iso9660 ... NFS coda Network FS gfs ocfs smbfs ... pseudo FS special purpose FSproc sysfs futexfs usbfs ... tmpfs ramfs devtmpfs pipefs network nvme device The Linux I/O Stack Diagram version 0.1, 2012-03-06 outlines the Linux I/O stack as of Kernel version 3.3



需要 4 金币 [ 分享pdf获得金币 ] 0 人已下载





下载需要 4 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!