下载此文档

UBIFS分析二:重要结构体.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
UBIFS中的重要的结构体 用leeming的话来说,一个大的工程中,最最核心的往往是数据结构体的定义。所以看代码不急着看c文件,而是主要看document和h文件,来理解设计者的思路,这样才能走对路。 UBI中对于一个UBI设备的抽象是以structubi_device来定义,其中包括了该UBI设备的各种信息。structubi_device{ structcdevcdev; structdevicedev; intubi_num;//UBI设备的标号,在ubiattach用户程序时以-d选项来输入 charubi_name[sizeof(UBI_NAME_STR)+5];//ubi设备的名称 intvol_count;//在该UBI设备中有多少个volume structubi_volume*volumes[UBI_MAX_VOLUMES+UBI_INT_VOL_COUNT]; spinlock_tvolumes_lock; intref_count; intimage_seq; intrsvd_pebs;//保留的LEB数目 intavail_pebs;//可用的LEB数目 intbeb_rsvd_pebs;//为坏块处理而保留的LEB数目 intbeb_rsvd_level;//为坏块处理而保留的LEB的正常数目 intautoresize_vol_id; intvtbl_slots; intvtbl_size;//volume表的大小(bytes) structubi_vtbl_record*vtbl;//内存中volume表的拷贝 structmutexdevice_mutex; intmax_ec;//最大的erasecounter /*Note,mean_ecisnotupdatedrun-time-shouldbefixed*/ intmean_ec;//平均erasecounter /*EBAsub-system'sstuff*/ unsignedlonglongglobal_sqnum; spinlock_tltree_lock; structrb_rootltree; structmutexalc_mutex; /*Wear-levelingsub-system'sstuff*/ structrb_rootused;//一个红黑树,其中是已用的blcok structrb_rooterroneous;//RB-treeoferroneoususedphysicaleraseblocks structrb_rootfree;//红黑树的根,其中是没有用到的block structrb_rootscrub;//需要擦除的blcok structlist_headpq[UBI_PROT_QUEUE_LEN]; intpq_head; spinlock_twl_lock; structmutexmove_mutex; structrw_semaphorework_sem; intwl_scheduled; structubi_wl_entry**lookuptbl;//atabletoquicklyfinda&structubi_wl_entryobjectforanyphysicalerasebl

UBIFS分析二:重要结构体 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zhufutaobao
  • 文件大小84 KB
  • 时间2020-04-04