亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? diskdevs.h

?? 開放源碼的嵌入式開發環境
?? H
字號:
/** * @file rtems/diskdevs.h * Physical and logical block devices (disks) support */ /* * Copyright (C) 2001 OKTET Ltd., St.-Petersburg, Russia * Author: Victor V. Vengerov <vvv@oktet.ru> * * @(#) $Id: diskdevs.h,v 1.6 2005/02/17 08:38:59 ralf Exp $ */#ifndef _RTEMS_DISKDEVS_H#define _RTEMS_DISKDEVS_H#ifdef __cplusplusextern "C" {#endif#include <rtems.h>#include <rtems/libio.h>#include <stdlib.h>#include "rtems/blkdev.h"/* Buffer pool identifier */typedef int rtems_bdpool_id;/* Block device ioctl handler */typedef int (* block_device_ioctl) (dev_t dev, uint32_t req, void *argp);/* disk_device: Entry of this type created for every disk device (both for * logical and physical disks). * Array of arrays of pointers to disk_device structures maintained. First * table indexed by major number and second table indexed by minor number. * Such data organization allow quick lookup using data structure of * moderated size. */typedef struct disk_device {    dev_t               dev;              /* Device ID (major + minor) */    struct disk_device *phys_dev;         /* Physical device ID (the same                                             as dev if this entry specifies                                             the physical device) */    char               *name;             /* Disk device name */    int                 uses;             /* Use counter. Device couldn't be                                             removed if it is in use. */    int                 start;            /* Starting block number (0 for                                             physical devices, block offset                                             on the related physical device                                             for logical device) */    int                 size;             /* Size of physical or logical disk                                             in disk blocks */    int                 block_size;       /* Size of device block (minimum                                             transfer unit) in bytes                                             (must be power of 2) */    int                 block_size_log2;  /* log2 of block_size */    rtems_bdpool_id     pool;             /* Buffer pool assigned to this                                             device */    block_device_ioctl  ioctl;            /* ioctl handler for this block                                             device */} disk_device;/* rtems_disk_create_phys -- *     Create physical disk entry. This function usually invoked from *     block device driver initialization code when physical device *     detected in the system. Device driver should provide ioctl handler *     to allow block device access operations. This primitive will register *     device in rtems (invoke rtems_io_register_name). * * PARAMETERS: *     dev        - device identifier (major, minor numbers) *     block_size - size of disk block (minimum data transfer unit); must be *                  power of 2 *     disk_size  - number of blocks on device *     handler    - IOCTL handler (function providing basic block input/output *                  request handling BIOREQUEST and other device management *                  operations) *     name       - character name of device (e.g. /dev/hda) * * RETURNS: *     RTEMS_SUCCESSFUL if information about new physical disk added, or *     error code if error occured (device already registered, wrong block *     size value, no memory available). */rtems_status_codertems_disk_create_phys(dev_t dev, int block_size, int disk_size,                       block_device_ioctl handler,                       char *name);/* rtems_disk_create_log -- *     Create logical disk entry. Logical disk is contiguous area on physical *     disk. Disk may be splitted to several logical disks in several ways: *     manually or using information stored in blocks on physical disk *     (DOS-like partition table, BSD disk label, etc). This function usually *     invoked from application when application-specific splitting are in use, *     or from generic code which handle different logical disk organizations. *     This primitive will register device in rtems (invoke *     rtems_io_register_name). * * PARAMETERS: *     dev   - logical device identifier (major, minor numbers) *     phys  - physical device (block device which holds this logical disk) *             identifier *     start - starting block number on the physical device *     size  - logical disk size in blocks *     name  - logical disk name * * RETURNS: *     RTEMS_SUCCESSFUL if logical device successfully added, or error code *     if error occured (device already registered, no physical device *     exists, logical disk is out of physical disk boundaries, no memory *     available). */rtems_status_codertems_disk_create_log(dev_t dev, dev_t phys, int start, int size, char *name);/* rtems_disk_delete -- *     Delete physical or logical disk device. Device may be deleted if its *     use counter (and use counters of all logical devices - if it is *     physical device) equal to 0. When physical device deleted, *     all logical devices deleted inherently. Appropriate devices removed *     from "/dev" filesystem. * * PARAMETERS: *     dev - device identifier (major, minor numbers) * * RETURNS: *     RTEMS_SUCCESSFUL if block device successfully deleted, or error code *     if error occured (device is not defined, device is in use). */rtems_status_codertems_disk_delete(dev_t dev);/* rtems_disk_lookup -- *     Find block device descriptor by its device identifier. This function *     increment usage counter to 1. User should release disk_device structure *     by invoking rtems_disk_release primitive. * * PARAMETERS: *     dev - device identifier (major, minor numbers) * * RETURNS: *     pointer to the block device descriptor, or NULL if no such device *     exists. */disk_device *rtems_disk_lookup(dev_t dev);/* rtems_disk_release -- *     Release disk_device structure (decrement usage counter to 1). * * PARAMETERS: *     dd - pointer to disk device structure * * RETURNS: *     RTEMS_SUCCESSFUL * * NOTE: *     It should be implemented as inline function. */rtems_status_codertems_disk_release(disk_device *dd);/* rtems_disk_next -- *     Disk device enumerator. Looking for device having device number larger *     than dev and return disk device descriptor for it. If there are no *     such device, NULL value returned. * * PARAMETERS: *     dev - device number (use -1 to start search) * * RETURNS: *     Pointer to the disk descriptor for next disk device, or NULL if all *     devices enumerated. */disk_device *rtems_disk_next(dev_t dev);/* rtems_diskio_initialize -- *     Initialization of disk device library (initialize all data structures, *     etc.) * * PARAMETERS: *     none * * RETURNS: *     RTEMS_SUCCESSFUL if library initialized, or error code if error *     occured. */rtems_status_codertems_disk_io_initialize(void);/* rtems_diskio_done -- *     Release all resources allocated for disk device interface. * * PARAMETERS: *     none * * RETURNS: *     RTEMS_SUCCESSFUL if all resources released, or error code if error *     occured. */rtems_status_codertems_disk_io_done(void);#ifdef __cplusplus}#endif#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产a区久久久| 久久99国产精品尤物| 国产欧美一区视频| 日韩写真欧美这视频| 欧美亚洲综合色| 色综合天天视频在线观看| 国产成人丝袜美腿| 精品一区二区三区免费| 麻豆精品一区二区av白丝在线| 国产欧美一二三区| 欧美在线免费视屏| 在线看日本不卡| 色婷婷一区二区三区四区| 99精品久久久久久| caoporn国产精品| 懂色av一区二区夜夜嗨| 丁香五精品蜜臀久久久久99网站| 国内精品伊人久久久久av一坑 | 国产精品久久久久久亚洲伦| 2欧美一区二区三区在线观看视频| 欧美一级黄色片| 色婷婷综合激情| 欧美三区免费完整视频在线观看| 欧美在线免费观看视频| 欧美在线免费播放| 在线成人av网站| 666欧美在线视频| 91精品国产综合久久久久久 | 国产精品天干天干在观线| 久久久精品国产免大香伊| 国产亚洲欧洲997久久综合| 久久久蜜臀国产一区二区| 欧美激情在线看| 一区二区三区资源| 日韩av网站在线观看| 国产一区二区中文字幕| 99re这里只有精品视频首页| 欧美日韩一级大片网址| 精品福利在线导航| 中文字幕一区不卡| 日韩精品欧美成人高清一区二区| 国产在线精品不卡| 9人人澡人人爽人人精品| 欧美精品乱码久久久久久 | 亚洲精品第1页| 麻豆久久久久久| 国产在线一区观看| 在线观看一区不卡| 免费欧美在线视频| 粉嫩aⅴ一区二区三区四区五区 | 成人性生交大片| 在线观看区一区二| 久久九九影视网| 亚洲国产一区二区三区| 加勒比av一区二区| 欧美亚洲另类激情小说| 久久在线免费观看| 亚洲成av人片一区二区| 高清不卡一区二区在线| 欧美精品123区| 亚洲欧洲日本在线| 国产一区二区三区国产| 欧美在线三级电影| 国产欧美一区二区三区在线老狼| 亚洲国产另类精品专区| 国产91丝袜在线18| 欧美一区二区视频观看视频| 亚洲男人的天堂一区二区| 国产一区二区女| 欧美一区二区三区视频免费播放| 亚洲国产精品黑人久久久| 麻豆精品久久精品色综合| 色就色 综合激情| 国产精品视频观看| 国产综合久久久久久鬼色| 欧美日韩免费一区二区三区| 国产精品久久久久影视| 极品美女销魂一区二区三区 | 日韩一区二区电影网| 17c精品麻豆一区二区免费| 国产一区二区三区在线看麻豆| 欧美日产国产精品| 国产精品视频免费| 久久久蜜臀国产一区二区| 成人网男人的天堂| 国产精品久久久久aaaa樱花 | 不卡的电视剧免费网站有什么| 色一情一伦一子一伦一区| 亚洲已满18点击进入久久| 久久女同精品一区二区| 久久久久久久久久看片| 日韩成人午夜精品| 欧美性大战久久| 亚洲最新在线观看| 99精品国产91久久久久久 | 国产精品乱人伦中文| 国产精品一二三在| 欧美精品一区二区三区蜜桃视频| 日韩在线一区二区三区| 678五月天丁香亚洲综合网| 亚洲高清三级视频| 色噜噜狠狠一区二区三区果冻| 成人免费在线播放视频| 成人av网址在线观看| 国产精品久久久久久久久图文区| 成人性生交大合| 国产精品国产三级国产普通话蜜臀| 国产成人精品免费视频网站| 久久久不卡影院| 国产99精品在线观看| 国产精品不卡一区二区三区| 99视频一区二区| 亚洲欧洲制服丝袜| 色丁香久综合在线久综合在线观看| 亚洲欧美偷拍三级| 欧美亚洲图片小说| 视频在线在亚洲| 日韩精品一区二区三区在线| 精久久久久久久久久久| 国产精品网站导航| 色婷婷综合久色| 视频在线观看国产精品| 日韩欧美国产三级| 91精品国产综合久久久久久久久久 | 国产一区二区久久| 中文在线免费一区三区高中清不卡| www.在线欧美| 亚洲最大成人网4388xx| 91超碰这里只有精品国产| 久久99久国产精品黄毛片色诱| 日本一区二区三区四区 | 中文久久乱码一区二区| 91香蕉国产在线观看软件| 亚洲一区二区三区激情| 日韩精品一区二区三区在线播放 | 国产精品成人免费| 欧美亚洲图片小说| 精油按摩中文字幕久久| 中国av一区二区三区| 91成人免费在线视频| 日本视频一区二区| 久久精品一区八戒影视| 色88888久久久久久影院野外| 天堂资源在线中文精品| 久久老女人爱爱| 色婷婷综合在线| 精品一区二区三区免费观看| 亚洲欧洲av另类| 91精品国产美女浴室洗澡无遮挡| 韩国精品久久久| 亚洲一区在线电影| 精品国产一区二区三区忘忧草 | 99久久婷婷国产综合精品| 亚洲.国产.中文慕字在线| 久久久久国产精品人| 欧美日韩和欧美的一区二区| 国产精品自拍三区| 亚洲高清在线精品| 国产欧美1区2区3区| 欧美理论片在线| 成人aa视频在线观看| 日本va欧美va瓶| 亚洲色图欧洲色图婷婷| 欧美成人a视频| 欧美性受极品xxxx喷水| 国产大陆亚洲精品国产| 日日欢夜夜爽一区| 最新国产成人在线观看| www日韩大片| 欧美精品乱码久久久久久按摩 | 欧美日本不卡视频| 99视频在线观看一区三区| 韩国一区二区视频| 午夜视频久久久久久| 国产精品国产三级国产aⅴ无密码| 欧美猛男gaygay网站| 99热在这里有精品免费| 韩国三级中文字幕hd久久精品| 亚洲线精品一区二区三区| 国产精品美女一区二区| 久久久久久久久久久久久夜| 日韩视频在线一区二区| 欧美午夜精品久久久| 成人免费视频一区二区| 国内精品国产成人国产三级粉色| 香蕉成人伊视频在线观看| 亚洲色图视频网| 国产欧美精品一区二区色综合| 日韩欧美成人午夜| 欧美精品日韩一区| 欧美系列亚洲系列| 日本精品一区二区三区高清 | 欧美一区二区私人影院日本| 欧美熟乱第一页| 色8久久精品久久久久久蜜| 99精品在线观看视频| 99精品欧美一区| 99精品在线免费| 91一区一区三区| av网站免费线看精品|