此篇博客为SylixOSARMBSP编写连载的第二篇,主要介绍startup.S文件具体实现。startup.S为BSP启动代码入口,通常由bootloader装载完SylixOS镜像后调用,下面以S3C2440A处理器为例,逐块介绍startup.S代码。#ifndefASSEMBLY
#defineASSEMBLY1
#endif此段代码告知后面引用的头文件..
分类:
其他好文 时间:
2015-06-19 13:41:10
阅读次数:
159
在kernel包中有几个重要的文件夹和文件,他们各司其职,处理着有关内核的一些功能操作。其中文件夹有三个:blk_drv(块设备驱动),chr_drv(字符设备驱动),math(数学协处理器) 文件中asm.s fork.c mktime.c panic.c printk.c sched.c sig...
分类:
系统相关 时间:
2015-06-15 18:12:39
阅读次数:
440
为什么阻塞?在阻塞方式下,写没有足够的空间或读时候没有数据。※ 阻塞方式是文件读写的默认方式。没有空间或者读时没有数据返回错误。※残留问题:驱动程序中全局变量 在不同进程间是共享的吗?阻塞型设备驱动程序 驱动代码: 1 #ifndef _MEMDEV_H_ 2 #define _MEMDEV_H_....
分类:
其他好文 时间:
2015-06-04 00:46:07
阅读次数:
186
SRAM,SDRAM,网卡有地址总线,由cpu统一编址。 NAND flash没有地址总线。 因 此有这两者寻址方式不同。
字符设备驱动程序的框架。
驱动程序 1.有led.read,led.write,led.open 这些函数,2.定义了—个结构体fileoperation,这个结构体包含指向led.read的.read 函数,包含指向led.write的.write函数,包含指向...
分类:
其他好文 时间:
2015-06-03 17:48:33
阅读次数:
183
在内核中,为了解决使用多个进程或者中断竞争共同的资源问题,引进Semaphore信号量机制; 一.完成量:compation,常用于中断之间,以下是字符设备驱动,多个read进程来同时调用字符设备,而当么有write的时候,read只可以等着。 1 #include 2...
分类:
其他好文 时间:
2015-05-28 17:50:00
阅读次数:
182
1
想一次修改某个目录下所有文件的权限,包括子目录中的文件权限也要修改,要使用参数-R表示启动递归处理。
刚开始学字符设备驱动,感觉最难的是驱动和底层硬件的连接。linux上的驱动程序,是基于操作系统之上的,他并不直接和底层的硬件打交道,但是我们写的驱动必须能使硬件“跑”起来,即与硬件紧密相连。
就拿最简单的LED驱动来说,我们的驱动程序是在虚拟的内存上面跑的,但是最终,LED的点亮还...
分类:
系统相关 时间:
2015-05-26 12:46:38
阅读次数:
241
第2期视频基本脱离了书,按视频的章节顺序学习就可以了第2期视频目录:第12课第8节 字符设备驱动程序之定时器防抖动_P.wmv第13课第1节 输入子系统概念介绍_P.wmv第13课第2节 输入子系统第编写驱动程序_P.wmv第14课 驱动程序分层分离概念_总线驱动设备模型_P.wmv第15课第1节 ...
分类:
其他好文 时间:
2015-05-25 12:52:59
阅读次数:
471
忠于源码,讲述linux字符设备驱动的那些事儿,重点讲述字符设备的创建和访问过程。...
分类:
系统相关 时间:
2015-05-24 00:12:38
阅读次数:
277
在linux下的应用层,一切皆文件,每个设备都对应着文件。然而,在内核中,为了标识设备的,会用特意的号码:叫字符号来表示。 今天将会学到字符设备的驱动,来写一个程序,通过在应用层写程序来操作内核里的设备文件,在应用层,写了一个程序,来打开一个文件: 1 #include ...
分类:
其他好文 时间:
2015-05-23 20:02:49
阅读次数:
123
20150518 字符设备驱动2015-05-18 Lover雪儿经过这两个月的学习,相信对设备驱动的编写已经有一个大概的了解了,温故而知新,此处我们再一次的系统性的复习一下字符设备驱动,然后,我们来尝试着自己从零实战写一个AD采集的字符设备驱动.以前学习使用的是老方法来注册字符设备驱动,此处我们使...
分类:
其他好文 时间:
2015-05-18 14:29:57
阅读次数:
106