- 博客(77)
- 收藏
- 关注
原创 内核的进程管理与调度
不同操作系统下,进程管理与调度的实现和机制有很大不同。对于上层应用(特别是跨平台)的开发,进程管理与调度显得不那么重要;但是,对于贴近操作系统的底层开发,就非常有必要了解Linux中进程的管理与调度
2016-12-21 12:06:29 1092
原创 shell中变量的使用
一个shell程序将继承其父shell的所有全局环境变量(即export的变量),并且可以对其重写而不影响父shell
2016-12-11 20:10:49 5409 1
原创 Linux环境变量详解
环境变量的本质就是变量,它的服务对象是shell程序,它分为局部环境变量和全局环境变量,分别有不同的作用域和自然生命周期1.不同角色的shell不同的情况下,会产生不同的shell。
2016-12-11 20:09:12 2091
原创 设备树详解
在Linux3.x版本后,arch/arm/plat-xxx和arch/arm/mach-xxx中,描述板级细节的代码(比如platform_device、i2c_board_info等)被大量取消,取而代之的是设备树
2016-11-24 16:53:11 36276 12
原创 c语言的存储类&作用域&生命周期&链接属性
存储类:描述这个变量在何种地方存储作用域:描述这个变量起作用的代码范围生命周期:描述这个变量什么时候诞生及什么时候死亡链接属性:描述这个变量(函数)能如何被链接这四个概念从不同角度分析了c语言的不同规则
2016-11-23 20:55:06 781
原创 c语言的宏、预处理、typedef
由源码到可执行文件的过程:源码.c->(预处理)->预处理过的.c->(编译)->汇编文件.S->(汇编)->目标文件.o->(链接)->elf可执行程序
2016-11-23 18:22:06 731
原创 内核中的定时器与延时
在驱动中,定时触发/周期性的工作是比较少的,因为驱动主要提供机制而非策略,除非要驱动的硬件本身有这方面的需求,否则定时触发/周期性的工作应交由应用层完成
2016-11-14 17:43:56 839
原创 内核对轮询IO(阻塞/非阻塞)的实现
应用层对设备文件的读写,常常会用到轮询操作。所谓轮询,就是指的是在读写时,若暂时无法读写,则卡在那里,直到可以读写。
2016-11-12 20:27:45 3067
原创 手动编译移植库/软件的一般方法
经常需要移植各种软件包,标准的做法是使用发行版定制工具,如Yocto,详见Yocto的使用实例。但有些情况下,我们不得不手动去移植。 本文以移植openobex1.3为例,展现了移植的方方面面。
2016-11-09 17:53:03 1561
原创 内核的竞态控制
何谓竞态?用一句话描述就是:并行执行的多个程序,同时访问共享资源,或执行同一段代码,若这些行为是有害的则称此为竞态1.解决机制现代soc大多是对称多处理器机制(SMP),每个核可以有自己的中断,自己的进程(宏观和微观都是并行)。如下 可以认为,SMP是竞态最复杂的情况了,单核竞态的复杂度真包含于SMP。由于驱动程序需要保证稳定性与普适性,所以最好一律按照SMP的情况来进行竞态
2016-11-08 21:13:50 763
原创 内核的中断机制
内核本身是一个裸机程序,所以在驱动中使用中断与裸机中没有大的区别。但是在2.6.35之后的内核中,为了避免竞态,默认取消了中断的嵌套,这点值得我们注意
2016-10-28 18:31:58 1362
原创 Yocto的使用实例
本文以往rootfs中添加一个软件包为例,阐述使用Yocto定制发行版的大致流程。 有关Yocto的功能和结构介绍,详见Yocto详解1.开发环境构建一般有两种情况:一种是公司服务器中已有了Yocto,我们只需在个人账户下简单复制Yocto开发环境即可。另一种情况是什么都没有,在服务器或个人电脑上从零搭建Yocto开发环境。
2016-10-25 15:21:38 16625 2
原创 基于块设备框架的驱动分析
传统的机械式块设备(如硬盘、DVD)虽然可以随机访问,但是连续访问效率更高,因此块设备驱动中有排序逻辑,将用户的随机访问重新调整成尽量连续访问以提升效率。所以块设备本身驱动层是支持缓冲区的,而字符设备驱动层没有缓冲
2016-10-18 21:53:52 885
原创 基于framebuffer的驱动分析
framebuffer帧缓冲(简称fb)是linux内核中虚拟出的一个设备,是一个platform类型设备,设备文件位于/dev/fb*
2016-10-03 10:47:18 6234
原创 LCD简介
我们在液晶面板后面加白光(即背光板),然后通过不同的电信号,令液晶分子选择性透光,这样液晶面板就显示出了不同的颜色。 不难得出结论,LCD本身只会透光,不会发光。亮度控制是由背光板负责的。
2016-10-02 10:34:23 7059 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人