- 博客(23)
- 资源 (37)
- 收藏
- 关注
转载 释伴:Linux 上的 Shebang 符号(#!)
使用Linux或者unix系统的同学可能都对#!这个符号并不陌生,但是你真的了解它吗?本文将给你简单介绍一下Shebang(”#!”)这个符号。这个符号(#!)的名称,叫做”Shebang”或者”Sha-bang”。长期以来,shebang都没有正式的中文名称。Linux中国翻译组的 GOLinux 将其翻译为:释伴,即解释伴随行的简称,同时又是shebang的音译。
2016-03-31 21:25:35 2282
转载 _IO, _IOR, _IOW, _IOWR 宏的用法与解析
在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动程序请求处理内容的值。cmd除了可区别数字外,还包含有助于处理的几种相应信息。 cmd的大小为 32位,共分 4 个域:bit31~bit30 2位为 “区别读写” 区,作用是区分是读取命令还是写入命令。bit29~bit15 14位为 "数据大小" 区,表示 ioctl() 中的 arg 变量传送
2016-03-26 12:58:41 953
转载 Linux SPI总线和设备驱动架构之一:系统概述
目录(?)[+]SPI是"Serial Peripheral Interface" 的缩写,是一种四线制的同步串行通信接口,用来连接微控制器、传感器、存储设备,SPI设备分为主设备和从设备两种,用于通信和控制的四根线分别是:CS 片选信号SCK 时钟信号MISO 主设备的数据输入、从设备的数据输出脚MOSI 主设备的数据输出、从设备的数据输入脚因为在
2016-03-25 21:24:07 803
转载 Linux设备驱动之——I2C总线
2 I2C子系统2.1 LinuxI2C子系统架构在内核中已经提供I2C子系统,所以在做I2C驱动之前,就必须要熟悉该子系统。2.2 三大组成部分1、I2C核心(i2c-core)I2C核心提供了I2C总线驱动和设备驱动的注册、注销方法,I2C通信方法(algorithm)上层的、与具体适配器无关的代码以及探测设备、检测设备地址的上层代码等。
2016-03-24 16:47:08 973
转载 linux下I2C驱动架构全面分析
I2C 概述 I2C是philips提出的外设总线. I2C只有两条线,一条串行数据线:SDA,一条是时钟线SCL ,使用SCL,SDA这两根信号线就实现了设备之间的数据交互,它方便了工程师的布线。 因此,I2C总线被非常广泛地应用在EEPROM,实时钟,小型LCD等设备与CPU的接口中。 但是Linux的i2c驱动体系结构却有相当的复杂度
2016-03-24 16:30:33 385
转载 read 系统调用剖析
大部分程序员可能会有这样的疑问:当在程序中调用库函数 read 时,这个请求是经过哪些处理最终到达磁盘的呢,数据又是怎么被拷贝到用户缓存区的呢?本文介绍了从 read 系统调用发出到结束处理的全过程。该过程包括两个部分:用户空间的处理、核心空间的处理。用户空间处理部分是系统调用从用户态切到核心态的过程。核心空间处理部分则是 read 系统调用在 linux 内核中处理的整个过程。3 评论:
2016-03-20 17:20:59 952
转载 file结构中的private_data
这个是Linux下连接VFS文件系统框架和不同文件/文件系统底层实现之间的一个核心数据结构,虽然它只是一个指针,但是一个指针可以解决所有问题。我们回想一下用户态线程的创建结构,函数的入口同样是一个void*指针,而千言万语汇成一根指针,诗可以兴、可以观、可以群、可以怨,可以解决所有问题。因为file是VFS框架的一个基本概念,它要支持文件操作结构,例如open/read/write/relea
2016-03-17 17:45:22 3865
转载 字符设备驱动、平台设备驱动、设备驱动模型、sysfs的比较和关联
学习Linux设备驱动开发的过程中自然会遇到字符设备驱动、平台设备驱动、设备驱动模型和sysfs等相关概念和技术。对于初学者来说会非常困惑,甚至对Linux有一定基础的工程师而言,能够较好理解这些相关技术也相对不错了。要深刻理解其中的原理需要非常熟悉设备驱动相关的框架和模型代码。网络上有关这些技术的文章不少,但多是对其中的某一点进行阐述,很难找到对这些技术进行比较和关联的分析。对于开发者而言,能够
2016-03-17 14:52:35 5102 1
转载 Linux下面一个简单的虚拟platform驱动
/* * Yao.GUET * http://blog.csdn.net/Yao_GUET * Linux下面一个简单的虚拟platform驱动 */在Linux之中,约定如果设备不属于任何的总线,则可以把它注册为虚拟的platform设备。下面就简单来学习一下一个简单的platform设备是怎么创建出来的。一般注册platform驱动的步骤是
2016-03-17 14:21:59 1192
转载 linux /sys目录下各个子目录的具体说明
/sys下的子目录内容 # ls /sys/block class firmware kernel powerbus devices fs module-----------------------------------------------------------------------------
2016-03-17 10:28:53 3924
转载 /dev、/sys/devices 和 /sys/dev 之间区别
/dev,设备文件存储目录,应用程序通过对这些文件的读写和控制,可以访问实际的设备;/sys/devices 目录,按照设备挂接的总线类型,组织成层次结构,保存了系统所有的设备;是文件系统管理设备的最重要的目录结构;这是内核设备按总线类型分层放置的目录结构, devices 中的所有设备都是连接于某种总线之下,在这里的每一种具体总线之下可以找到每一个具体设备的符号链接,它也是构
2016-03-17 10:18:45 4790
转载 深入探索 Kdump,第 1 部分:带你走进 Kdump 的世界
Kdump 是一种基于 kexec 的 Linux 内核崩溃捕获机制,将 kernel 崩溃前的内存镜像保存,程序员通过分析该文件找出 kernel 崩溃的原因,从而进行系统改进。本文首先介绍了 kdump 的基本概念,其次以 RHE6.2 和 SLES11 为例介绍如何安装和配置 kdump。2 评论:岳 乐, 软件工程师, IBM张 艳, 软件工程师,
2016-03-14 14:22:02 3184
转载 应不应该使用inline-block代替float
inline-blockfloat本文由99根据Steven Bradley的《Should You Use Inline-Blocks As A Substitute For Floats?》所译,整个译文带有我们自己的理解与思想,如果译得不好或不对之处还请同行朋友指点。如需转载此译文,需注明英文出处:http://www.
2016-03-13 16:04:51 2420
转载 HTML中的Node和Element的区别
元素(Element)和结点(Node)的区别,元素是一个小范围的定义,必须是含有完整信息的结点才是一个元素,例如…。但是一个结点不一定是一个元素,而一个元素一定是一个结点。什么是node:NODE是相对TREE这种数据结构而言的。TREE就是由NODE组成。这个部分你可以参考离散数学的树图。什么是elementELEMENT则是HTML里的概念,是元素即标签包
2016-03-12 17:22:26 7017
转载 JavaScript中Element与Node的区别,children与childNodes的区别
本文首发博客园:http://jscode.cnblogs.com,转载请注明出处。 关于Element跟Node的区别,cilldren跟childNodes的区别很多朋友弄不清楚,本文试图让大家明白这几个概念之间的区别。 Node(节点)是DOM层次结构中的任何类型的对象的通用名称,Node有很多类型,如元素节点,属性节点,文本节点,注释节点等,通过NodeType区分,常
2016-03-12 17:19:47 495
转载 linux内核线程死锁或死循环(soft lockup)之后如何让系统宕机重启
在开发内核模块或驱动时,如果处理失误,导致内核线程中出现死锁或者死循环,你会发现,除了重启之外,你没有任何可以做的。这时你的输入不起任何作用,终端(不是指远程的ssh工具)只会在那重复的输出类似“BUG: soft lockup - CPU#0 stuck for 67s! [fclustertool:2043]”,更无奈的是你重启之后导致系统挂起的堆栈信息也看不到,你所能做的就是一遍遍的加调试信
2016-03-12 13:32:51 24085
转载 再思linux内核在中断路径内不能睡眠/调度的原因(2010)
版权声明:本文为博主原创文章,未经博主允许不得转载。Linux内核中断路径中不能睡眠,为什么? 这里就行了很深入的讨论,值得一看:http://bbs2.chinaunix.net/viewthread.php?tid=1618430 但是,他们的讨论最后没有得出一个明确的结论。其中,cskyrain在8楼 的思考触及到了一个要点,但是没有深入展开:
2016-03-12 13:27:57 709
转载 关于中断上下文为什么不能睡眠?
这个问题有很多人问过,我看了下Linux得内核代码,原因如下:(当然我不能保证一定对,如果有牛人理解得更好,欢迎指正)1、 中断处理的时候,不应该发生进程切换,因为在中断context中,唯一能打断当前中断handler的只有更高优先级的中断,它不会被进程打断,如果在 中断context中休眠,则没有办法唤醒它,因为所有的wake_up_xxx都是针对某个进程而言的,而在中断context
2016-03-12 13:24:18 665
转载 CSS: float属性和position属性的区别和应用
在使用div+css进行网页制作时,我们经常需要对某些元素进行一些必要的定位,使其能按照我们预想的效果呈现在页面合适的位置上,而float和position便是实现这一效果的两种方法。一、浮动(float)float属性经常被运用于制作Horizontal Menu(横向菜单)和实现多列式网页布局。根据它提供的 left 和right 两个值,我们可以很容易的把特定的元素从文档流中
2016-03-10 21:33:09 4106
转载 iframe获取父、子窗口的方法
jquery、js调用iframe父窗口与子窗口元素的方法1. jquery在iframe子页面获取父页面元素代码如下:$("#objid",parent.document)2. jquery在父页面获取iframe子页面的元素代码如下:$("#objid",document.frames('iframename').document)
2016-03-10 15:18:40 485
转载 jquery控制css的display
Js代码 使用jquery真的很方便,比如要控制div的显示与隐藏,一句话就搞定了,请看下面使用说明。 $("#id").show()表示display:block, $("#id").hide()表示display:none; $("#id").toggle()切换元素的可见状态。如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。
2016-03-10 15:09:41 695
转载 float,position,relative,absolute,文档流这些关键术语解惑
在CSS编程中,相信很多人对于上面标题中的这些术语有很大的疑惑,接下来让我们一点点拨开它们的神秘面纱,以及纠正几个关键性的错误,通篇文章我就不提供图示了,我想能看到我这篇文章的人估计也对这些术语表现出来的图示已经很清楚了,这里就不再麻烦上图了。 在解释之前,首先说几本CSS的经典之作(要搞前台的人应该必读的): 1,Cascading Sty
2016-03-09 15:54:07 1250
转载 CSS文档流与块级元素和内联元素
CSS文档流与块级元素(block)、内联元素(inline),之前翻阅不少书籍,看过不少文章, 看到所多的是零碎的CSS布局基本知识,比较表面.看过O'Reilly的,发现里面提到的文档流概念让我很敏感. 可恶的是书中并没有解释文档流是什么东西,或许作者觉得这个太简单了以至于不值一提.但我觉得,这个概念实在太重要了.理解了它,一堆CSS布局的理论都 变得易于理解,并且体会到CSS这套设计的合理性
2016-03-09 11:48:11 366
APUE-3rd advanced programming in the unix environment
2014-03-15
最新的TPCH benchmark数据包
2013-10-08
算法导论 中文版 第二版
2012-04-10
算法导论 第二版 英文版
2012-04-10
MFC通过ADO操作Access数据库
2011-11-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人