微软关于BinFS的一些翻译

Binary ROM Iimage File System (BinFS)
The binary ROM Image File System (BinFS) is a file system that reads the binary image (.bin) file format generated by Romimage.exe. The .bin file format organizes data into specific sections. Each section contains a section header that specifies the starting address, length, and checksum values for that section. Romimage.exe writes data organized by logical sections, such as an application's text or .data region, to the .bin file.
二进制ROM映像文件系统(BinFS)是一个可以读取由Romimage.exe生成的二进制.bin的镜像文件。.bin文件格式化并把数据组织成特定的部分。每一部分包含区段头文件,这些头文件明确了该区段的起始地址,长度和校验值。Romimage.exe通过逻辑区段写入组织好的数据,像一个应用程序的文本或者数据区域(.data region),往.bin文件中。

To load BinFS on top of a block driver, you must enter the appropriate registry keys in the storage profile of your block driver. The following code example shows the registry keys you can add to the storage profile of your block driver to specify that BinFS is the default file system.
去下载BinFS 到一个块驱动上,你必须在你的块驱动的存储性能里面注册合适的注册表键值。下面代码的例子显示了你能够往你的块驱动的存储性能添加的注册表键值。这些键值能够明确BinFS 是一个默认的文件系统。

[HKEY_LOCAL_MACHINE/System/StorageManager/Profiles/MSFlash]
    "DefaultFileSystem"="BINFS"
    "PartitionDriver"="mspart.dll"
    "MountHidden"=dword:1
    "MountAsROM"=dword:1
    "Folder"="NAND Flash"
    "Name"= "FLASH Disk Block Device"
[HKEY_LOCAL_MACHINE/System/StorageManager/BinFS]
    "FriendlyName"="BIN Filesystem"
    "Dll"="binfs.dll"
    "Paging"=dword:1

The default setting for BinFS is for the BINFS mount point to be visible to the user. In order to hide the mount point from the user you must add a registry key to prevent the FAT file system from shadowing the Windows directory. To add this key, set one of the following registry keys.
BinFS默认的设置是为了显示BinFS的位置对于用户可见。为了隐藏挂载指向用户,你必须添加一个注册键值去阻止FAT文件系统屏蔽Windows 路径。为了加入这个键值,设置下面其中的一个注册键值。
Windows CE 5.0 and later
[HKEY_LOCAL_MACHINE/System/StorageManager/Profiles/MSFlash/FATFS]
    "MountHidden"=dword:0
    "MountAsROM"=dword:0
Windows CE .NET 4.2 and earlier
[HKEY_LOCAL_MACHINE/System/StorageManager/Profiles/MSFlash/FATFS]
    "MountFlags"=dword:0

------------------------------------------------------------------------------------------------

Boot Loader Support for BinFS
If a boot loader includes support for the binary ROM image file system (BinFS), the boot loader can partition, format, and write data to a media device. The boot loader uses Bootpart library to write to flash media and to create partitioning. This partitioning is necessary for both BinFS and another file system, such as FAT, to be flashed on the same media device.
如果一个boot loader包括支持二进制ROM镜像文件系统(BinFS),boot  loader是可以分区的,格式化的和可以写数据到媒体设备的。The boot loader使用Bootpart静态库写入flash并且产生一个分区。这个分区无论是对于BinFS还是其他文件系统都是必要的,像FAT,闪存在同一个存储设备上。

To accomplish partitioning, the boot loader uses the Bootpart library to create a BinFS partition and an extended partition. The OS uses these partitions to create one or more data partitions in the extended partition. The extended partition is required because the OS cannot modify the master boot record (MBR) once the boot loader's Bootpart library partitions flash memory.
为了完成分区,the boot loader使用Bootpart静态库生成一个BinFS分区和一个扩展分区。操作系统使用这些分区在这个扩展分区上产生一个或者多个数据分区。扩展分区是要求的,因为操作系统不能修改控制引导记录,当the boot loader的Bootpart静态库flash memory进行了分区。

The Bootpart library can create a boot partition to store boot parameters. The flash memory blocks that contain the MBR sector, the BinFS memory region, and the boot parameters partition are read-only. The BinFS and boot partitions are also read-only so that the partitions cannot be formatted or deleted.
Bootpart库可以产生一个引导分区去存储引导参数。flash内存块包含了master boot record(控制引导记录)的区块,the BinFS内存区域和引导分区只能是可读的。he BinFS内存区域和引导分区的区域是不能格式化或者删除的,他们也都是只读的。

Bootpart enables code for a flash media driver (FMD) to be abstracted from the boot loader. The boot loader creates the partition and reads or writes to the partition by specifying a byte offset into the partition, as well as a length value. Bootpart can also perform a low-level format on the flash media.
Bootpart(引导部分/分区)可以使FMD的代码从boot loader中抽象出来。the boot loader产生分区并且
通过指定分区中一个字节的偏移对分区进行读和写,包括长度的值。Bootpart也可以在flash上执行一个低级格式化。

To support BinFS, your boot loader must link to the Bootpart library located in the %_WINCEROOT%/Public/Common/Oak/Drivers/EthDbg/Bootpart directory.
为了支持BinFS,你的boot loader必须连接到位于%_WINCEROOT%/Public/Common/Oak/Drivers/EthDbg/Bootpart目录下的Bootpart静态库

For more information on the Bootpart library see, Bootpart Functions.
更多关于Bootpart 静态库的信息可以查看Bootpart函数。

---------------------------------------------------------------------------------------------

BinFS and the Bootpart Library
The boot loader uses the Bootpart library to create a partition that enables the binary ROM image file system (BinFS) and another file system, such as a file allocation table (FAT) file system, to be located on the same flash memory. The boot loader can use Bootpart to create the BinFS partition, as well as a second partition. The second partition can either be a regular partition or an extended partition. The second partition must be an extended partition if multiple data partitions are to be used. An extended partition also provides the flexibility to create one or more data partitions using OS utilities.
The boot loader使用Bootpart静态库产生一个分区,可以使二进制ROM镜像文件系统(BinFS)和其他文件系统,像一个文件分配表(FAT)文件系统,位于同一个flash 内存。The boot loader可以使用Bootpart差生BinFS分区,同时还有第二个分区。第二块分区既可以是一块连续的分区也可以是扩展的分区。如果multiple数据分区被使用了,那么第二块分区一定是扩展分区。一个扩展分区也通过使用操作系统组件可以灵活的产生一个或者多个数据分区。

Bootpart can also create a boot partition to store boot parameters. The flash blocks that contain the master boot record (MBR) section, BinFS region, and the boot parameter partition are read-only and cannot be modified. In addition, the BinFS and boot partitions cannot be formatted or deleted.
Bootpart 也可以产生一个Boot 分区去存储boot参数。flash 块包含了控制引导记录的部分,BinFS区域,和引导参数区域都是只读的是不能被修改的。另外,the BinFS和引导分区是不能被格式化或者被删除的。


So MSPART will recognize the BinFS partition, add the following registry keys to the partition table:
所以MSPART将会识别出BinFS 分区,往分区表加入下列注册键值:

[HKEY_LOCAL_MACHINE/System/StorageManager/PartitionTable]
   "20"="BOOT"
   "21"="BINFS"

-----------------------------------------------------------------------------------------

 BinFS Registry Settings
The Binary Romimage File System (BinFS) retrieves driver specific settings from the registry.

You can place BinFS settings at two different tiers in the registry hierarchy

    * Root file system key
      Settings made at the root key of the file system registry, HKEY_LOCAL_MACHINE/System/StorageManager/BinFS, apply to every mounted instance of BinFS, unless explicitly overridden by a setting at a lower level. These setting apply to BinFS for all profiles.
    * Profile-specific settings
      Settings made at the Profiles registry subkey, HKEY_LOCAL_MACHINE/System/StorageManager/Profile/MSFlash, apply only to devices that report the profile MSFlash.
BinFS 从注册表里面获得驱动具体的设置

你可以把BinFS设置放在注册表等级结构的不同等级中
* 引导文件系统键值
  设置模式在文件系统注册表的根键,
  HKEY_LOCAL_MACHINE/System/StorageManager/BinFS
  适用于BinFS的每个挂接实例,除非在更低的级别设置更详尽的优先级。这些设置适用于BinFS的文件。
 * 详细的文件设置
    设置模式在文件注册子键里
    HKEY_LOCAL_MACHINE/System/StorageManager/Profile/MSFlash
    只适用于记录文件的MSFlash的设备

Registry value: Type      Description

Dll: REG_SZ              Specifies the name of the file system DLL.Set to "binfs.dll" for                          BinFS.
指出DLL文件系统的名称。对于BinFS设置成binfs.dll。

FriendlyName: REG_SZ     Specifies a friendly name for the file system.
针对一个文件系统指定一个友善的名字

MountLabel: REG_DWORD    Pulls the volume label and uses it as a mount point.
标出容量记号并且适用它作为挂接点

Paging: REG_DWORD        Controls paging. Set to 1 to enable paging for BinFS.
控制页。设置1使能BinFS的分页。

Util: REG_SZ             Specifies the DLL name of utility to do format and scan.
明确组件的DLL名称去格式化和浏览
MountFlags: REG_DWORD    This value is deprecated for Windows CE 5.0 and later. For                          replacement values, see Mount Settings.
这个值不赞成在Windows CE 5.0 和之后的版本适用。代替的值,请参阅Mount Settings。



Default BinFS Settings
The following registry key example shows the default values for BinFS.
下面的注册表的键值举例了BinFS的默认值
[HKEY_LOCAL_MACHINE/System/StorageManager/BinFS]
    "FriendlyName"="Bin FileSystem"
    "Dll"="binfs.dll"
    "Paging"=dword:1
[HKEY_LOCAL_MACHINE/System/StorageManager/Profiles/MSFlash]
   "DefaultFileSystem"="BINFS"
   "PartitionDriver"="mspart.dll"
   "MountHidden"=dword:1
   "MountAsROM"=dword:1
   "Folder"="NAND Flash"
   "Name"="FLASH Disk Block Device"

MountHidden and MountAsROM settings apply only to Windows CE 5.0 and later. For versions of Windows Embedded CE earlier than Windows CE 5.0, replace these two settings with  "MountFlags"=dword:11

MountHidden and MountAsROM设置只适合Windows CE 5.0 和以后的版本。对于Windows CE 5.0 和之前的版本,用"MountFlags"=dword:11进行替代。

As of Windows CE 5.0, the MountFlags registry flag has been deprecated. For more information, see Mount Settings.
在Windows CE 5.0中,MountFlags 注册键值已经不赞成使用。对于更多的消息,请参阅Mount Settings。

Controlling /Windows Directory Shadowing
The following registry keys prevent FATFS from attempting to shadow the /Windows directory.
下面的注册键值阻止FATS文件系统试图去隐藏/Windows目录。
[HKEY_LOCAL_MACHINE/System/StorageManager/Profiles/MSFlash/FATFS]
    "MountHidden"=dword:0
    "MountAsROM"=dword:0

A MountAsROM value of dword:1 specifies that you mount the file system as an external ROM file system that shadows the /Windows directory; setting MountAsROM to dword:0 prevents this shadowing. In addition, setting the MountHidden value to dword:0 causes the /BINFS directory to be visible to the user. In both cases, you can access the BinFS contents using the /BINFS  directory.
A MountAsROM value of dword:1 明确指出你挂接的文件系统作为一个扩展的ROM文件系统隐藏 /Windows目录;设置MountAsROM to dword:0阻止这次隐藏。另外,设置MountHidden value to dword:0导致/BINFS 目录对于用户是可见的。在这两种情况下,你可以使用/BINFS路径访问BinFS内容。

MountHidden and MountAsROM setting apply only to Windows CE 5.0 and later. For earlier versions of Windows Embedded CE, replace MountHidden and MountAsROM with the following registry setting:
MountHidden and MountAsROM 的设置只适合Windows CE 5.0和之后的版本。对于早期的版本,使用下面的注册键值去替代MountHidden and MountAsROM:"MountFlags"=dword:11

"MountFlags"=dword:11

In addition, for Windows CE 5.0 and later, the following registry key example prevents FATFS from attempting to shadow the /Windows directory:

另外,对于Windows CE 5.0 和之后的版本,下面的注册键值例子阻止FATFS文件系统试图去隐藏/Windows目录。
[HKEY_LOCAL_MACHINE/System/StorageManager/Profiles/MsFlash/FATFS]
   "MountFlags"=dword:0

Specifying the Flash Media Driver
The following registry key examples show the necessary settings to specify the Flash Media Driver (FMD), and to allow Storage Manager to load the partitions on the flash memory:
下面的注册键值举例显示了必要的设置去明确FMD,并且允许存储管理去装载在flash内存上的分区。
 [HKEY_LOCAL_MACHINE/Drivers/BuiltIn/PCI/Instance/NAND_Flash]
   "Profile"="MSFlash"
   "IClass"=multi_sz"A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
   "Order"=dword:0
   "FriendlyName"="SD NAND FLASH Driver"
   "Dll"="sdnpcid.dll"
   "Prefix"="DSK"
[HKEY_LOCAL_MACHINE/System/StorageManager/AutoLoad/sdnpcid]
   "DriverPath"="Drivers//BuiltIn//PCI//Instance//NAND_Flash"
   ;LoadFlags 0x01 == load synchronously
   "LoadFlags"=dword:1
   "Order"=dword:0

For more information about the Autoload sub-key, see Autoload Settings.

The following registry key example is necessary for MSPART to recognize the BinFS partition:
对于更多的信息关于自动装载的子键,请参阅Autoload 设置。
下面的注册键值的例子是必须的对于MSPART曲识别BinFS分区:
[HKEY_LOCAL_MACHINE/System/StorageManager/PartitionTable]
   "20"="BOOT"
   "21"="BINFS"
======================================================
Autoload Settings
Auto-load file system settings specify automatically loaded file systems that do not have associated block drivers, such as the Release File System (relfsd) and network file systems.
Auto-load文件系统设置明确了自动装载文件系统和块驱动是没有联系的,像relfsd发布的文件系统和网络文件系统。
Unlike other branches in the registry tree, values assigned at the HKEY_LOCAL_MACHINE/System/StorageManager/Autoload level do not apply to lower subkeys. Autoload settings apply to one key and one set of values.
不像其他的注册表目录的分支,在
HKEY_LOCAL_MACHINE/System/StorageManager/Autoload
分配的值并不适应更低一级的子键。
Autoload设置适合一个键和一组的值。
Value: type             Description

LoadFlags: REG_DWORD    Controls how the file system is loaded.
控制文件系统时如何装载的
    * 1 - Loads the file system synchronously. This value is required to auto-load in boot phases 0 or 1.
      1-同步的装载文件系统。这个值需要去自动装载在引导阶段0或者1
    * 2 - Loads the file system asynchronously on another thread. (Default) Supported only for boot phase 2.
      2-在另一个线程上异步的装载文件系统。(Default)默认情况下只支持在引导阶段2

BootPhase: REG_DWORD    Controls the boot phase during which the file system is loaded.
控制引导阶段哪个文件系统被装载。
    * 0 - Loads file system before initializing locale.
    * 1 - Loads file system after initializing locale, but before the full registry is functional.
    * 2 - Loads file system after the registry is fully functional.
     0-在本地初始化之前装载文件系统
     1-在本地完成初始化之后装载文件系统,但是在全部注册表功能化之前。
     2-装载文件系统在所有注册表功能化之后。
Dll: REG_SZ             Specifies the name of the FSD DLL.
指明FSD DLL的名称。
Order: REG_DWORD        Indicates the load order relative to other Auto-load systems in the same boot phase. Lower order numbers are loaded earlier.
指出在同一引导阶段内和其他Auto-load系统相关的Autoload文件系统的装载顺序。较低的数值被优先装载。
For example, the following registry key tells the file system to auto-load the default settings for relfsd.
例如,下面的注册表键值说明了文件系统去自动装载默认的relfsd设置。
[HKEY_LOCAL_MACHINE/System/StorageManager/Autoload/Relfsd]
    "Dll"="relfsd.dll"
    "Paging"=dword:1
    "LoadFlags"= dword:1
---------------------------------------------------------------------------------------------
Bootpart Functions
The following table shows the Bootpart library functions with a description of each.
下表显示了Bootpart 静态库函数,这些函数都带有描述。
Function              Description

BP_GetPartitionInfo      Obtains the partition entry for an open partition.
对于一个分区,获取一个分区的入口
BP_Init                  Reads data from a partition.
从一个分区中读取数据
BP_LowLevelFormat        Erases, verifies, and writes logical sectors in a specified range. This function should be called when preparing flash memory for a download of multiple .bin files.
在一个特定的范围擦除,校验和写逻辑块。当准备一块flash memory为了下载multiple .bin文件。这个函数应该被调用
BP_ReadData               Reads data from a partition.
从一个分区中读取数据
BP_SetDataPointer         Sets the data pointer of a specified partition. The data pointer stores the logical byte address where the next read or write operation will occur.
设置一个指向特定分区的数据指针。数据指针存储着下一个要进行读或写操作的逻辑字节地址
BP_WriteData              Writes data to the partition.
往一个分区里面写入数据

------------------------ ------------============================================-

 Bootpart Functions
The following table shows the Bootpart library functions with a description of each.
下表显示了Bootpart 静态库函数,这些函数都带有描述。
Function              Description

BP_GetPartitionInfo      Obtains the partition entry for an open partition.
对于一个分区,获取一个分区的入口
BP_Init                  Reads data from a partition.
从一个分区中读取数据
BP_LowLevelFormat        Erases, verifies, and writes logical sectors in a specified range. This function should be called when preparing flash memory for a download of multiple .bin files.
在一个特定的范围擦除,校验和写逻辑块。当准备一块flash memory为了下载multiple .bin文件。这个函数应该被调用
BP_ReadData               Reads data from a partition.
从一个分区中读取数据
BP_SetDataPointer         Sets the data pointer of a specified partition. The data pointer stores the logical byte address where the next read or write operation will occur.
设置一个指向特定分区的数据指针。数据指针存储着下一个要进行读或写操作的逻辑字节地址
BP_WriteData              Writes data to the partition.
往一个分区里面写入数据

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值