`
highsky
  • 浏览: 275090 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Linux核心数据结构--request

阅读更多
被用来向系统的块设备发送请求。它总是向buffer cache读出或写入数据块。

struct request {

    volatile int rq_status;   

#define RQ_INACTIVE            (-1)

#define RQ_ACTIVE              1

#define RQ_SCSI_BUSY           0xffff

#define RQ_SCSI_DONE           0xfffe

#define RQ_SCSI_DISCONNECTING  0xffe0



    kdev_t rq_dev;

    int cmd;
       /* READ or WRITE */

    int errors;

    unsigned long sector;

    unsigned long nr_sectors;

    unsigned long current_nr_sectors;

    char * buffer;

    struct semaphore * sem;

    struct buffer_head * bh;

    struct buffer_head * bhtail;

    struct request * next;

};
分享到:
评论

相关推荐

    Linux UVC Gadget数据结构

    1. **uvc_videostruct**: 这是核心数据结构,包含了与UVC设备相关的所有信息。其中,`epu8`指向USB端点(endpoint),用于数据传输;`bpp`表示每个像素的位数;`fcc`是颜色格式编码;`width`和`height`定义了视频的...

    linux数据结构[汇编].pdf

    Linux操作系统的核心在于其内核,而内核的高效运行离不开一系列关键的数据结构。这些数据结构在内存管理和系统调用中起到至关重要的作用。本章详细介绍了Linux内核中的一些主要数据结构,它们是构建和管理操作系统...

    linux dhcpd(dhcp-4.2.5)源代码

    - `include`: 保存了头文件,定义了数据结构、函数原型和常量。 - `scripts`: 包含了用于构建、测试和安装的脚本。 - `doc`: 提供了相关的文档和手册页。 - `config.*`: 配置文件模板,用于编译和安装过程。 2....

    linux操作系统核心常用的数据结构借鉴.pdf

    本文将对 Linux 操作系统核心中常用的数据结构进行详细的介绍和分析,这些数据结构是 Linux 操作系统核心的重要组成部分,对理解和掌握 Linux 操作系统核心的工作原理和机制具有重要的意义。 1. 块设备结构(Block ...

    linux设备驱动详解-源代码

    1. **设备结构体**:`struct device`是设备驱动的核心数据结构,它包含了设备的基本信息,如设备号、父设备等。 2. **设备文件**:通过在 `/dev` 目录下创建设备文件,用户空间可以通过文件操作函数(如open、read、...

    linux操作系统核心常用的数据结构.pdf

    Linux操作系统核心是构建在一系列复杂的数据结构之上的,这些数据结构是系统高效运行的基础。本文将深入探讨在Linux内核中常见的两种数据结构:`block_dev_struct`和`buffer_head`,以及它们在块设备管理和缓冲区...

    linux驱动程序开发-中文版

    - **性能优化**:合理利用内核提供的API和数据结构,避免不必要的内存拷贝等操作,可以显著提升驱动程序的性能。 通过以上介绍,我们可以看到Linux驱动程序开发是一个复杂但有趣的过程,涉及许多底层技术和概念。...

    Linux数据结构电子书.pdf

    《Linux数据结构》一书详尽地介绍了在Linux操作系统中使用的关键数据结构,这些数据结构是内核功能的基础。在Linux内核中,数据结构扮演着至关重要的角色,因为它们被用来组织和管理系统的资源,如文件、内存、设备...

    Linux操作系统中主要实用数据结构简介

    在Linux操作系统中,数据结构是其内核实现的基础,它们被用来高效地组织和管理系统的资源。以下是一些主要的实用数据结构,这些结构在Linux内核中扮演着至关重要的角色。 首先,`block_dev_struct` 结构用于注册块...

    Linux 数据结构

    Linux操作系统的核心在于其内核,而内核的高效运行离不开一系列关键的数据结构。这些数据结构在Linux中扮演着至关重要的角色,它们是操作系统理解和管理硬件、文件系统、进程、网络等核心功能的基础。以下是根据标题...

    linux-device-driver-source-code.rar_linux device driver

    `driver模型`包括总线、设备、驱动三个主要概念,通过`struct device`、`struct device_driver`和`struct bus_type`等数据结构来抽象表示。 此外,驱动程序通常需要实现一些特定的回调函数,例如`probe`函数用于...

    linux-driver-easy.zip_easy _linux

    总的来说,"linux-driver-easy.zip_easy_linux"这个资源应该会涵盖以上所述的基础概念,并逐步指导初学者构建简单的驱动程序,包括设备注册、I/O操作、中断处理等核心环节。通过学习和实践,新手可以逐步掌握Linux...

    Linux数据结构电子书整理.pdf

    23. **task_struct**: 核心数据结构之一,表示系统中的进程或任务,包含了进程的状态、资源分配等信息。 24. **timer_list**: 用于实现进程的实时定时器,处理定时事件。 25. **tq_struct**: 在调度队列中,每个`...

Global site tag (gtag.js) - Google Analytics