自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

寸先生的AI道路

可上九天揽月,可下五洋捉鳖,谈笑凯歌还

  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 用mmap写Linux用户空间驱动

<br />       <br />一、    mmap函数解析:<br />Ø        函数原型:<br />#include <sys/mman.h><br />void *mmap(void *start, size_t length,int prot, int flags,int fd,off_t offset);<br />int munmap(void *start, size_t length);<br />Ø        函数功能:<br />mmap将一个文件或者其它对象映射进内

2011-03-31 20:13:00 5605 4

原创 学习笔记之Linux内核同步方法

一、程序并发执行的原因在用户空间:l         调度程序完全可能选择另一个高优先级的进程到处理器上执行,所以就有可能一个程序正处于临界区时被非自愿的抢占了,如果新调度的的进程随后也进入到同一个临界区,前后两个进程之间就会产生竞争。l         信号是异步发生的也有可能产生竞争条件。在内核空间:l         中断:中断几乎可以在任何时候异步发生,也就可能随时打断当前正在执行的代码。l         软中断和tasklet:内核能在任何时候唤醒或调度软中断和tasklet,打断当前正在执行的

2011-03-28 09:22:00 735

原创 Linux设备模型之platform_device和platform_driver

<br />     在《Linux设备模型分析之基本数据结构》一文中我分析了kobject,kset,device,device_driver等构成Linux设备模型的重要数据结构。但在分析Linux内核代码时这些原始数据结构大多被platform_device和platform_driver所封装代替,下文采用at91sam9260开发板提供的Linux2.6.19内核,剖析platform_device和platform_driver的使用。<br />       首先来看这两个结构体的定义,都在/

2011-03-25 20:02:00 1500

原创 Linux设备模型分析之基本数据结构

      Linux随着硬件设备的发展及内核版本的演进,设备模型也变得越来月复杂,早先看了《Linux设备驱动程序》觉得一头雾水,又看了许多资料和高手的帖子,总算有了一定认识,下面写出来和Linux内核爱好者分享一下。一、底层数据结构:kobject 和 kset1、kobject内核对象:Linux2.6设备模型的最底层核心结构,该数据结构使所有设备在底层都具有统一的接口,每一个在内核中注册的kobject对象都对应于sysfs文件系统中的一个目录。Kobject在内核中对应有一套申请,初始化,添加,注

2011-03-25 15:52:00 1030

原创 Uboot在ARM平台下运行流程分析

<br />      本文以AT91Sam9260系列ARM9平台为例,分析Uboot引导程序的运行流程。<br />     <br />第一阶段:<br />第一阶段的启动代码在cpu/arm926ejs/start.s 中,完成的工作主要有:<br />

2011-03-22 15:04:00 1207 1

原创 ARM-Linux下的GPIO中断程序

今日为了调试ARM板上的GPIO引脚中断效果,以便在后续项目使用ARM与ZLG7290按键LED中断芯片连接中随意选择空闲的GPIO引脚来作为ZLG7290的中断信号线,特意编写了一个小的Linux GPIO中断驱动程序下载到开发板上做实验。经验证,这种软件中断方式也还差强人意。下面贴出自己编写的不成熟的代码,见笑()。       实验的硬件电路为ARM GPIO的PB17连接一个共阴LED,PB18与PB19连接,PB18由中断驱动设置为低电平触发,PB19由GPIO驱动程序控制,上层应用程序通过驱动控

2011-03-21 21:13:00 12226 1

原创 常用串行接口总结

<br />近期项目中用到RS232接口和RS485接口,所以在网上搜集了一些资料对常见串口标准进行了归纳总结。<br /> <br /> <br />RS232接口:<br />计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。 RS- 232-C接口(又称 EIA RS-232-C)是目前最常

2011-03-21 17:19:00 2662

转载 2.6内核配置与注释大全(作者:王旭东)

一、内核简介 <br />内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳<br />定性。 <br />Linu x的一个重要的特点就是其源代码的公开性,所有的内核源程序都可以在/usr/src/linux下找到,大部分应用软<br />件也都是遵循GPL而设计的,你都可以获取相应的源程序代码。全世界任何一个软件工程师都可以将自己认为优秀的代码<br />加入到其中,由此引发的一个明显的好处就是Linux修补漏洞的快速以及对最新软件技术的利用。而L

2011-03-15 16:49:00 2584

转载 SPI总线简介

<br />本文转载自:http://blog.21ic.com/user1/4773/archives/2008/47222.html<br />同步外设接口(SPI)是由摩托罗拉公司开发的全双工同步串行总线,该总线大量用在与EEPROM、ADC、FRAM和显示驱动器之类的慢速外设器件通信。 <br />SPI(Serial Peripheral Interface)是一种串行同步通讯协议,由一个主设备和一个或多个从设备组成,主设备启动一个与从设备的同步通讯,从而完成数据的交换。SPI 接口由SDI(串行

2011-03-10 20:51:00 779

原创 电容基本常识

<br />以下是从网上搜集整理总结的一些电容小常识<br />一、  电容的分类和作用<br />按结构可分为:固定电容,可变电容,微调电容。<br />按介质材料可分为:气体介质电容,液体介质电容,无机固体介质电容,有机固体介质电容电解电容。<br />按极性分为:有极性电容和无极性电容。 我们最常见到的就是电解电容。<br />电容在电路中具有隔断直流电,通过交流电的作用,因此常用于级间耦合、滤波、去耦、旁路及信号调谐<br />二、  电容的种类<br />电容的种类有很多,可以从原理上分为:无极性

2011-03-03 15:54:00 861

原创 任务和过程的可重入性

  主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。 重入即表示重复进入,首先它意味着这个函数可以被中断,其次意味着它除了使用自己栈上的变量以外不依赖于任何环境(包括static),这样的函数就是purecode(纯代码)可重入,可以允许

2011-03-03 10:57:00 598

原创 PC硬盘引导过程

<br />一、Boot Sector<br />也就是硬盘的第一个扇区,由MBR(Master Boot Record),DPT(Disk Partition Table),Boot Record ID构成。<br />MBR又称为主引导记录,占用Boot Sector的前446字节,存放系统的主引导程序(它负责从活动分区中装载并运行系统引导程序)<br />DPT即系统分区表,占64个字节,记录磁盘的基本分区信息,主分区表分为四个分区项,每项16字节,分别记录了每个主分区的信息(即最多可以有四个主分区)

2011-03-02 10:53:00 1271

DataSocket技术在网络化测试中的应用

基于Labview的DataSocket编程,快速构建网络化资源,使用基于VC的快速Active控件

2010-08-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除