嵌入式课程
qq_22716879
习之渔也、报之以鱼
展开
-
文件I/O编程
一个进程启动后会打开3个文件:标准输入、标准输出和标准出错处理,三个文件分别对应文件描述符0、1、2(也就是宏替代STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO)文件I/O操作设计到的函数有:open() close() read() write() lseek() 其中lseek() 只应用与可随机访问的文件中,而管道、套接字和大部分的字符设备文件是不原创 2016-03-09 09:06:34 · 478 阅读 · 0 评论 -
进程控制开发
进程的概念:进程是程序中的一次执行过程,也是程序执行(系统调度)和资源分配的最小单元进程和程序的区别:进程是动态的过程,而程序是保存在磁盘中的有序集合的静态代码。进程生命过程:动态创建、调度和消亡的整个过程。进程运行在独立的虚拟地址空间上,因此,即使一个进程发生异常,也不会影响到系统中的其他进程使用getppid()得到的是bash的进程pid进程的执行模式分为用户模式和内核模式:内核模式原创 2016-03-09 17:14:56 · 622 阅读 · 0 评论 -
进程间通信
进程间通信方式:管道、信号、消息队列、共享内存、信号量、套接字无名管道:a、只能用于具有亲缘关系的进程之间;b、是半双工的通信模式;c、可视为特殊的文件,并不属于任何文件系统,并且只存在于内核的内存空间管道只能在具有亲缘关系的进程间通信的原因:通过管道通信的基本原理本身就是子进程继承父进程的管道文件描述符才得以和管道通信的,故只能在具有亲缘关系的进程间通信。管道的文件描述符为fd[];其中fd原创 2016-03-10 22:46:16 · 386 阅读 · 0 评论 -
多线程编程
线程是进程的进化产物,是进程内独立的一条运行路线,是处理器调度的最小单元(别称为:轻量化进程)一个进程可以有多个线程,也就是说可以有多个线程控制表及堆栈寄存器,但却共享同一个用户地址空间。线程根据其调度者可以分为用户级线程、内核线程(轻量化线程)和核心机线程用户级线程主要解决的是上下文的切换问题,它的调度算法和调度过程全部由用户自行选择决定,在运行时不需要特定的内核支持用户级的线程的缺点:在原创 2016-03-12 16:08:55 · 289 阅读 · 0 评论 -
嵌入式linux网络编程
网络接口层:是数据帧的独立网络信息传输单位TCP/IP四层模式:网络接口层、网络层、传输层、应用层IP负责在主机和网络之间寻址和路由数据包TCP:为应用程序提供可靠的通信连接(适合一次传输大批数据)UDP:提供无连接通信;不对传送包进行可靠性保证(适合一次传输少量数据,可靠性由应用层保证)通过IP的源/目的可以唯一地区分网络中两个设备的连接,通过socket的源/目的可以唯一地区分网络中两原创 2016-03-13 21:09:10 · 334 阅读 · 0 评论