好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

嵌入式操作系统原理.pdf

41页
  • 卖家[上传人]:xzh****18
  • 文档编号:44564982
  • 上传时间:2018-06-14
  • 文档格式:PDF
  • 文档大小:227.51KB
  • / 41 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第五章 存储管理嵌入式操作系统原理 ——Windows CE存储管理• 对象存储(Object Store) • 文件系统(File System) • 数据库(Database) • 注册表(Registry ) • 文件压缩(File Compression) • 存储管理器(Storage Manager)5.1 对象存储• 对象存储的作用 • 对象存储完成的工作 • 存储机制 • 容量限制 • 对象标志符(CEOID) • 对象存储容量5.1.1 对象存储的作用• 对象存储为应用程序及其相关数据提供了 持久稳定的存储断电保护) • 对象存储需要非易失性(nonvolatile) RAM作为物理介质5.1.2 对象存储完成的工作• 管理堆栈(stack)和内存堆(memory heap) • 在需要时压缩和解压缩文件 • 无缝连接基于ROM的应用程序和基于RAM 的数据5.1.3 存储机制• 当向对象存储写入数据时发生电源中断的 情况,Windows CE会通过各种手段保证对 象存储不被破坏5.1.4 容量限制• RAM文件系统最大256M,单个文件限 32M对象存储的个数可达4,000,000。

      • 文件最大4GB,通过压缩、不为未使用到 的文件部分分配内存的方法实现5.1.5 对象标志符(CEOID)• 对象存储的对象可以是:注册表中的一个 键,注册表中的一个值,一个文件等等 • 每个对象分配唯一的CEOID,用于访问对 象存储中的对象5.1.6 对象存储容量• 最大容量为256MB(可压缩) • 可修改,用于定义应用程序及其相关数据 的存储量 – 在冷启动时设置 – 调用系统函数SetSystemMemoryDivision – 控制面板5.2 文件系统• 文件系统的概念 • Windows CE文件系统概述 • 内部文件系统 • FAT文件系统 • BinFS文件系统 • 可安装的文件系统 • 文件系统过滤器5.2.1 文件系统的概念• 文件系统提供对存储设备的高效访问 • 文件系统将存储设备结构化以便读写 • 常用的文件系统格式5.2.2 Windows CE文件系统概述• 提供三种文件系统 • 可根据设备需要创建文件系统 • 使用标准Win32 API访问 • 使用句柄访问文件 • 外部存储设备可分区5.2.3 内部文件系统• 内部文件系统控制ROM的访问,也在RAM 中提供对象存储中的文件存储。

      • 两种内部文件系统供选择: – RAM和ROM文件系统 – 单独ROM文件系统RAM和ROM文件系统• 在提供ROM访问的同时提供在对象存储中 的文件存储目标设备需为RAM持续供电 以保留对象存储的内容 • 对象存储是系统的根目录,除了外部文件 系统之外所有数据都存储在对象存储中 • ROM中的数据可通过Windows目录访问单独ROM文件系统• 不允许应用程序在对象存储中放置文件 • ROM中的数据可通过Windows目录访问 • 外部文件系统以目录的形式存在于根目录 下 • 可选择外部文件系统作为根目录5.2.4 FAT文件系统• file allocation table (FAT) 文件系统适用于 所有外部存储卡,包括ATA卡、线性flash 卡以及PC卡 • 卡可被分区,每个分区可作为一个FAT卷挂 载,放置在根目录的一个文件夹下5.2.5 BinFS文件系统• Binary ROM image file system(BinFS) 用于读取由Romimage.exe产生的二进制文 件格式 • .bin文件格式将数据按特定的分段组织5.2.6 CD/UDFS文件系统• Compact Disc File System (CDFS)和 Universal Disc File System (UDFS) 用于读 取CD,DVD,CD-ROM。

      • 使用ATAPI块驱动程序定位和音频视频回放5.2.7 可安装的文件系统• 文件系统驱动程序的创建 • 文件系统驱动程序的加载 • 文件系统驱动程序管理器文件系统驱动程序的创建• 函数映射 • Windows CE为FSD的开发提供模板 • 保存所需信息的数据结构文件系统驱动程序的加载1)插入PC卡 2)该卡驱动程序读取PC卡驱动注册表入口,它定 义了该卡要使用的FSD的名称 3)发送给存储管理器一条通知 4)存储管理器安装适当的分区驱动程序,然后为分 区装载相应的文件系统 5) FSD管理器调用MyFSD.dll的输出函数 MyFSD_MountDisk 6)当调用MyFSD_UnmountDisk时,设备上的所有 卷会被注销文件系统驱动程序管理器• 负责管理与系统中所有可安装文件系统的 交互 • 屏蔽不同文件系统的接口差异,向用户提 供标准的函数接口 • 创建文件句柄,注册卷,安装必要的函 数,将应用程序的调用映射到安装的函数 上5.2.8 文件系统过滤器• 以DLL形式存在,入口点映射到标准文件系统函 数上(如CreateFile) • 位于文件系统上层,截取文件系统调用,可利用 这一机制加密、压缩或病毒扫描所有fsdmgr加载 的文件系统。

      • 是轻量级的FSD,只是文件系统过滤器导出 FSD_HookVolume和FSD_UnhookVolume ,文 件系统驱动程序导出FSD_MountDisk和 FSD_UnmountDisk 两者都由文件系统驱动程 序管理器加载5.3 数据库• 数据库的作用 • CEDB • EDB5.3.1 数据库的作用• 数据库提供对记录的存储、访问和分类 • Windows CE database(CEDB)针对小型 高效存储而设计得精简平实 • 数据操作在对象存储或数据库卷中进行, 以防数据丢失 • 默认数据库为CEDB,也支持嵌入式数据库 (EDB)5.3.2 CEDB• 支持所有存储设备上的数据库,包括PC卡 和可安装的文件系统 • 每CEDB数据库包含最多 CEDB_MAXSORTORDER个类索引和若干 记录 • 记录的最大量定义在Windbase.h和Rapi.h 中的CEDB_MAXRECORDSIZE常量中5.3.3 EDB• 是CEDB的升级和加强,支持以下功能 – Transactions – 供多个用户访问 – 多种排序顺序,键属性,以及数据库 – 增强的性能,特别对较大的数据库时。

      5.4 注册表• 注册表的作用 • 注册表类型 • 注册表构成5.4.1 注册表的作用• 注册表用于存储应用程序、驱动程序、用户参 数、以及其他配置信息 • 注册表由键和值的分级系统构成 • 四类根键 – HKEY_LOCAL_MACHINE 硬件和驱动程序配置数据 – HKEY_CURRENT_USER 用户配置数据 – HKEY_CLASSES_ROOT OLE和文件类型匹配配置数 据 – HKEY_USERS 用于所有用户的数据5.4.2 注册表类型• RAM式注册表(RAM-based)– 在对象存储中保存所有注册表数据 – 必须为RAM持续供电,断电则丢失数据 – 用于从不或很少冷启动的设备 • 蜂窝式注册表(Hive-based) – 在文件或hive中存储数据,可保持在任何文件 系统中,减少了系统冷启动的负担 – 可支持多用户设置5.4.3 注册表构成• 4类根,根下是一系列键,每个键下包含若 干子键和入口 • 指定键或入口的方法: – [ROOT]\[Key]\[Subkey]\[Subkey or entry]5.5 文件压缩• Windows CE自身支持压缩,自动分配10K 内存用于解压缩 • 系统基本配置中不包含压缩,需要用户添 加。

      5.6 存储管理器• 存储管理器体系结构 • 存储管理器装载块设备的步骤 • 分区驱动程序 • 分区管理器 • 块设备驱动程序管理程序5.6.1 存储管理器体系结构• 存储设备包括硬盘、CD-ROM、CF卡存储 器等等 • 存储管理器由三部分组成,块设备驱动程 序管理器、分区管理器和文件系统驱动程 序(FSD)管理器 • 所有对文件的访问以及卷的处理都是经由 存储管理器完成的存储管理器体系结构图5.6.2 存储管理器的装载过程• 1 设备管理器负责装载块设备的驱动程序 • 2 由该设备发出一个通知,告知存储管理器该设 备的设备名及其GUID • 3 存储管理器根据配置信息为该设备加载分区驱 动程序 • 4 存储管理器枚举该设备上的所有分区 • 5 存储管理器为每个分区加载文件系统驱动程 序5.6.3 分区驱动程序• 对存储设备进行逻辑划分 • 多个分区可使用不同的文件系统 • 以动态链接库的形式存在 • 用户可编写自定义的分区驱动程序5.6.4 分区管理器• 存储设备可被划分为多个逻辑分区,每个 分区由一组连续的扇区组成 • 调用分区驱动程序完成对分区的管理、装 载和卸载5.6.5 块设备驱动程序管理程序• 对设备的读写操作以块为单位 • 块设备驱动程序向上层输出流接口 • 块设备驱动程序的装载过程资源• MSDN library > Mobile and Embedded Development > Embedded Operating System Development • 《Windows CE.NET系统分析及试验教程》,陈 向群等编著,机械工业出版社,2003 • 《Windows CE.NET内核定制及应用开发》,周 毓林等编著,电子工业出版社,2005 • 《嵌入式系统的实时概念》,【美】 Qing Li著, 北京航空航天大学出版社,2004。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.