- 博客(10)
- 资源 (50)
- 收藏
- 关注
原创 sqlite3移植到arm linux
1,环境:软件:linux:2.6.38硬件:6410交叉编译工具:arm-linux-gcc 也适用于其他linux平台。2,步骤:1》下载sqlite3源码包:http://www.sqlite.org/sqlite-amalgamation-3.6.1.tar.gz 2》复制到工作目录/tmpcp sqlite-amalgamation-3.6.1.t
2012-04-24 15:06:05 7279 4
原创 linux内核研究-10-模块
linux内核研究-10-模块 1,说在前面都说十全十美,这是内核研究的第十篇了,这也是linux内核研究系列的最后一篇。虽然《深入理解linux内核》看了多遍,《linux内核设计与实现》看了多遍,也写过几个内核模块,这次学习还是收获不少。 2,下面就以一个hello world模块结束这次linux内核之旅吧//===hello.c://=== /*
2012-04-20 14:23:40 1695 2
原创 linux内核研究-9-页高速缓存(cache)
linux内核研究-9-页高速缓存1,说在前面1》页高速缓存是内存的一部分,只是用途是用来缓存磁盘块的。2》页高速缓存存在基于两方面因素,访问内存的速度要远远高于访问磁盘,临时局部原理(tmporal locality)3》核心结构体:struct address_space。在,可见跟文件系统关系紧密。2,页高速缓存的原理和过程1》应用程序调用文件I/O函数,C库封装
2012-04-20 13:16:32 1888 1
原创 linux内核研究-8-块设备I/O层
linux内核研究-8-块设备I/O层1,说在前面1》块I/O层介于文件系统层和块设备驱动之间2》此层的核心是I/O“请求列表”3》请求链表的节点是bio和HB(header of buffer),描述了扇区和块以及页的关系4》块,是文件系统的最小操作单元。页,内存管理中的页。扇区,硬件最小操作单元。5》扇区大小2,块设备I/O层的原理和工作过程1》文件系统向请求列
2012-04-19 15:40:49 2347 1
原创 linux内核研究-7-内存管理
linux内核研究-7-内存管理 1,说在前面:1》内存分成一定大小的‘页’2》内核以‘页’为最小单位进行管理。也就是说内核管理内存的最小单位是‘页’3》每个物理页对应一个页结构体 struct page 2,内存管理函数->kmalloc函数:Void *kmalloc(size_t size,int flags)1》 内存申请的内核函数之一
2012-04-13 11:51:23 1832 1
原创 linux内核研究-6-work queue
linux内核研究-6-work queue1,work queue 与软中断和tasklet的关系1》work queue是内核线程来执行的,软中断和tasklet是qsoftirqd内核线程来执行的。2》work queue能休眠,软中断和tasklet不能。2,work queue工作原理和过程1》内核有一个默认的工作者线程(worker thread),event(
2012-04-09 13:25:16 1648 1
原创 linux内核研究-5-tasklet
linux内核研究-5-tasklet1,tasklet与软中断1》tasklet需要软中断的支持,没有软中断,就没有tasklet。2》tasklet可以认为是软中断的一个子系统。3》个人认为将来tasklet可以完全替代软中断。2,tasklet工作原理和过程1》内核有一个链表,在里面:struct tasklet_struct{};里面有tasklet处理函数和函
2012-04-06 17:16:08 1412 1
原创 linux内核研究-4-软中断
linux内核研究-4-软中断1,说在前面1》此“软中断”非彼“软中断”,这里说的不是针对硬件中断的那个,而是中断处理流程的下半部分机制之一。2》2.6内核有三种下半部机制:软中断,tasklet,work queue。3》老的内核使用的BH,task queue,现在都已经不用了。4》tasklet 需要软中断的帮助。5》软中断不能抢占其它软中断,但是不同CPU上的可以同
2012-04-05 17:38:03 1760 5
原创 linux内核研究-3-中断
linux内核研究-3-中断 1,还是惯例,本节将用一个小例子来说明中断的工作原理和过程以及如何在驱动中使用中断。2,说在前面1》中断和异常是有区别的。异常是一种同步中断。上一节说到的系统调用使用的内核陷入就是异常(软中断)。2》中断的实现需要硬件的支持,比如要让硬件工程师把设备的某个引脚连接到CPU的跟中断相关的某个引脚。3》中断比较特殊,不能占用太多时间,所以有必要
2012-04-05 09:06:57 1787 1
原创 linux内核研究-2-系统调用
1,“学习linux最好的方法就是试着修改她”,下面就用一个小例子,说一下,如何添加一个linux的系统调用。 2,步骤:1》向官方申请分配给咱一个系统调用号,假设为300,咱们的系统调用名称叫long sys_rill(void)2》在系统调用的表项(一般在对应体系结构的entry.s中)最后添加一行:.long sys_rill3》定义系统调用号(一般在中):#de
2012-04-01 14:48:28 1575 1
openrisc_demo.rar
2013-12-03
Open Core Platform based on OpenRISC Processor and DE2-70 Board
2013-04-26
simplescalar 1.0 源码
2013-01-06
OpenRISC1000_System_Architecture manual
2012-11-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人