随笔分类 -  嵌入式linux应用开发

多线程程序设计
摘要:一、线程理论基础1. 多线程线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT、Linux。2.为什么有了进程,还要引入线程呢?使用多线程到底有哪些好处?使用多线程的理由之一是:和进程相比,它是一种非常“节俭”的多任务操作方式。在Linux系统下,启动一个新的进程必须分配给它独立的地址空间,建立众多的数据表来维护它的代码段、堆栈段和数据段,这是 阅读全文

posted @ 2012-04-04 14:14 n哖苡逅 阅读(3531) 评论(0) 推荐(0)

进程间通信程序设计2
摘要:一、消息队列1. 定义unix早期通信机制之一的信号能够传送的信息量有限,管道则只能传送无格式的字节流,这无疑会给应用程序开发带来不便。消息队列(也叫做报文队列)则克服了这些缺点。2. 发展消息队列就是一个消息的链表。可以把消息看作一个记录,具有特定的格式。进程可以向中按照一定的规则添加新消息;另一些进程则可以从消息队列中读走消息。3. 分类目前主要有两种类型的消息队列:POSIX消息队列以及系统V消息队列,系统V消息队列目前被大量使用。4. 持续性:系统V消息队列是随内核持续的,只有在内核重起或者人工删除时,该消息队列才会被删除。5. 键值:消息队列的内核持续性要求每个消息队列都在系统范围内 阅读全文

posted @ 2012-04-04 09:33 n哖苡逅 阅读(667) 评论(0) 推荐(0)

进程间通信程序设计1
摘要:一、进程间通讯概述1. 目的(为什么进程间需要通信?)1)数据传输:一个进程需要将它的数据发送给另一个进程。2)资源共享:多个进程之间共享同样的资源。3)通知事件:一个进程需要向另一个或一组进程发送消息,通知它们发生了某种事件。4)进程控制:有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有操作,并能够及时知道它的状态改变。2. 发展Linux进程间通信(IPC)由以下几部分发展而来:1)UNIX进程间通信2)基于System V进程间通信3)POSIX进程间通信POSIX(Portable Operating System Interface) 阅读全文

posted @ 2012-03-31 21:25 n哖苡逅 阅读(2410) 评论(0) 推荐(2)

进程控制
摘要:一、进程控制理论基础定义:进程是一个具有一定独立功能的程序的一次运行活动。特点:动态性、并发性、独立性、异步性。进程调度的状态如图所示:进程ID(PID):标识进程的唯一数字;父进程的ID(PPID):创建子进程的进程;用户ID(UID):启动进程的的用户。进程互斥:进程互斥是指当有若干进程都要使用某一共享资源时,任何时刻最多允许一个进程使用,其他要使用该资源的进程必须等待,直到占用该资源者释放了该资源为止。临界资源:操作系统中将一次只允许一个进程访问的资源称为临界资源。临界区:进程中访问临界资源的那段程序代码称为临界区。为实现对临界资源的互斥访问,应保证诸进程互斥地进入各自的临界区。进程同步 阅读全文

posted @ 2012-03-31 10:24 n哖苡逅 阅读(763) 评论(0) 推荐(0)

导航