bio

bio

linux操作系統核心數據結構
bio是linux内核中通用塊層的一個核心數據結構,它描述了塊設備的I/O操作。内核中塊I/O操作的基本容器由bio結構體表示,它定義在文件include/linux/bio.h中。該結構體代表了正在活動的以段(segment)鍊表形式組織的塊I/O操作。一個段是一小塊連續的内存緩沖區。這樣,單個緩沖區就不一定要連續。所以使用段來描述緩沖區,即使一個緩沖區分散在内存的多個位置上,bio結構體也能對内核保證I/O操作的執行。這樣的向量I/O稱為分散-聚合I/O。bio結構體中的主要成員變量都是用來管理I/O操作執行的相關信息的,其中最重要的幾個成員變量是bi_io_vecs、bi_vcnt和bi_idx。[1]
    中文名:幻燈片 24BIO 外文名: 别名: 英文名:bio 全 名:Before in Office 類 型:程序 用 途:提供就業前的咨詢和心理輔導

簡介

幻燈片24BIO,Before in Office的縮寫形式。

當前面臨那些即将進入職場的人們,特别是應屆學生們來說,如果找到一份适合自己的工作和如何才能在辦公室政治中立于不敗之地是非常重要的課題。

那麼BIO應運而生,BIO主要為即将進入職場的朋友們提供就業前的咨詢和心理輔導。

前綴pref.

表示"生命","生物"(如:biochemistry)

Biology(生物學)的縮寫

一種不能用語言表示的奇怪的感覺或者生活狀态,或者口頭禅,僅适用與小部分人群,可能你的身邊就有這種人存在,當你告訴他時,他會很吃驚。因為這很surprise,哇哈哈,還有它的變異體。比如阿啦BIO,在這種人群中,本詞語在任何話語或感覺中都适用,因為它全都可以概括。

具體字段

bio(block input output)塊的輸入和輸出

bio是linux内核中通用塊層的一個核心數據結構,它描述了塊設備的I/O操作。它聯系了内存緩沖區與塊設備。

具體字段如下:

/*

* main unit of I/O for the block layer and lower layers (ie drivers and

* stacking drivers)

*/

struct bio {

sector_t bi_sector; /* device address in 512 byte

sectors */

struct bio *bi_next; /* request queue link */

struct block_device *bi_bdev;

unsigned long bi_flags; /* status, command, etc */

unsigned long bi_rw; /* bottom bits READ/WRITE,

* top bits priority

*/

unsigned short bi_vcnt; /* how many bio_vec's */

unsigned short bi_idx; /* current index into bvl_vec */

/* Number of segments in this BIO after

* physical address coalescing is performed.

*/

unsigned int bi_phys_segments;

unsigned int bi_size; /* residual I/O count */

/*

* To keep track of the max segment size, we account for the

* sizes of the first and last mergeable segments in this bio.

*/

unsigned int bi_seg_front_size;

unsigned int bi_seg_back_size;

unsigned int bi_max_vecs; /* max bvl_vecs we can hold */

unsigned int bi_comp_cpu; /* completion CPU */

atomic_t bi_cnt; /* pin count */

struct bio_vec *bi_io_vec; /* the actual vec list */

bio_end_io_t *bi_end_io;

void *bi_private;

#if defined(CONFIG_BLK_DEV_INTEGRITY)

struct bio_integrity_payload *bi_integrity; /* data integrity */

#endif

bio_destructor_t *bi_destructor; /* destructor */

/*

* We can inline a number of vecs at the end of the bio, to avoid

* double allocations for a small number of bio_vecs. This member

* MUST obviously be kept at the very end of the bio.

*/

struct bio_vec bi_inline_vecs;

};

上一篇:無水硫酸銅

下一篇:SDS

相關詞條

相關搜索

其它詞條