- 博客(6)
- 资源 (11)
- 收藏
- 关注
原创 Llinux内核移植 part4:USB hub线程
USB系统: hub线程1. hub表征usb子系统中所有和hub相关的都交由一个内核线程表征, 通过 static struct workqueue_struct *hub_wq 来管理。创建/删除hub_wq = alloc_workqueue("usb_hub_wq", WQ_FREEZABLE, 0);destroy_workqueue(hub_wq);queue_work(hu
2016-09-26 13:03:55 2262
原创 Linux内核移植 part4: USB总线
总线设备模型(二): USB总线标签: linux系统1. 数据结构所有的USB设备都和一个东东关联,那就是bus,其类型定义在drivers/usb/core/driver.c中struct bus_type usb_bus_type = { .name = "usb", .match = usb_device_match, .uevent = usb_e
2016-09-24 15:37:45 687
原创 Linux内核移植 part4:API Reference for V4.1
1 Auxilary Interfaces1.1 double linked liststatic inline void INIT_LIST_HEAD(struct list_head *list);list_for_each_entry(pos, struct list_head *head, member);static inline void list_add_tail(struct l
2016-09-23 13:48:11 927
原创 cache行为模型
贴一段自己写的cache行为仿真代码, 针对ARM Cortex A5核,未经过严格验证/* * This is a simulation program * for the ARM Cortex-A5 L1 DCache * * Cache Structure Description: * 4-way set L1 data cache, total size = 32KB, with
2016-09-23 10:37:47 1852 3
转载 Linux内核移植 part4:内核线程对信号的处理
转自 http://www.51testing.com/html/63/524463-819036.htmlLinux 线程Linux中的线程分为用户线程和内核线程,用户线程是标准的线程,完全的自主性,完全的抢占性;但是内核线程就不那么好了,某种意义上没有用户线程那么清闲,这个怎么理解呢?用户线程的编写者只需要实现应用逻辑就可以,至于调度,信号处理等工作完全有内核代劳,用户进程根本不需要操这些心,比
2016-09-20 16:02:12 927
原创 Linux内核移植 part4:bitmap详解
1 含义顾名思义,bitmap就是指位映射,通过给比特位赋予含义来实现特定的功能,主要是用来管理资源。不同的映射,其每一位代表的含义不同。以dma内存映射为例,每一bit就代表一个内存页。从数据结构上看,bitmap是一个数组,其类型为长整形(long bitmap[])。2 在dma预留内存分配机制中的应用。2.1 申请内存在内核刚启动后,通过调用dma_declare_
2016-09-05 08:04:39 1877
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人