发布时间:2013-01-09 12:25:24
作者:曹忠明,华清远见嵌入式学院讲师。 Uboot是嵌入式系统中最常用的bootloader,这里我们以s3c2410为例分析一下uboot的启动流程。首先通过uboot的链接文件,我们可以看到uboot运行是执行的第一段代码在start.S中。 ENTRY(_start) SECTIONS { &nb......【阅读全文】
发布时间:2013-01-09 12:25:19
作者:王姗姗,华清远见嵌入式学院讲师。 如何利用多进程,来实现文件的拷贝? 在我们学习IO的时候,曾经利用文件IO函数,标准IO函数都实现了对文件的拷贝,那么在我们学习过进程间通信后,就可以创建多个进程来完成对同一个文件的读写。例如让父进程写文件的前半部分,子进程来写文件的后半部分,因为两个进程间是可以并发执行的,所以将会节约一部分时间,提高执行的效率。那么怎样才能实现这个功能? 我们以文件IO为例,边讲述如何实现的同时,也给大家说下为什么这样写的原因,希望能给大家得到些启发。 首先来看下用文件IO函数实现拷贝文件的程序: #include <sys/typ......【阅读全文】
发布时间:2013-01-09 12:25:14
作者:李智敏,华清远见嵌入式学院上海中心讲师。 一、信号及信号来源 信号本质 信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。 信号是进程间通信机制中唯一的异步通信机制,可以看作是异步通知,通知接收信号的进程有哪些事情发生了。信号机制经过POSIX实时扩展后,功能更加强大,除了基本通知功能外,还可以传递附加信息。 信号来源 信号事件的发生有两个来源:硬件来源(比如我们按下了键盘或者其它硬件故障);软件来源......【阅读全文】
发布时间:2013-01-09 12:23:57
作者:杨硕,华清远见嵌入式学院讲师。 由于嵌入式系统的专用型与定制性,与全球PC市场不同,没有一种微处理器或者微处理器公司可以主导嵌入式系统。本文分析了当前市场上主流的一些32位嵌入式微处理器的特点和应用场合,并对其未来发展做一些展望。这里只是按照体系结构分类,不涉及具体的处理器芯片。 一. ARM ARM处理器是由英国的ARM公司设计的32位RISC处理器。 毫无疑问,ARM芯片是嵌入式微处理器中的佼佼者,是很多数字电子产品的核心。如今95%的手机里面的核心处理器使用的都是ARM芯片,而ARM在整个手持市场上占有90%以上的份额,这是一个惊人的比例。 ARM......【阅读全文】
发布时间:2013-01-09 12:23:36
作者:李强,华清远见嵌入式学院讲师。 前几天上进程间通讯的课程,看到有同学对共享内存有些不是很明白,而且在查man帮助的时候也不是很能明白系统对其的说明,故有了这篇文章。 共享内存是系统在做进程间通讯时比较常用的IPC通讯方式之一,同时也是效率最高的,但是由于其的独特性导致在使用共享内存的时候需要注意一点就是几个进程间通讯时的互斥和同步问题,所以在使用共享内存的时候,我们一般要对其加锁或者加一些其他的同步机制,比如信号灯之类的。 首先看下共享内存的数据结构: 共享内存区的数据结构 每个共享内存段在内核中维护着一个内部结构shmid_ds,该结构定义在linux/s......【阅读全文】