- 博客(8)
- 收藏
- 关注
转载 进程、线程的优缺点
进程概念 进程是表示资源分配的基本单位,又是调度运行的基本单位。例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括各种表格、内存空间、磁盘空间、I/O设备等。然后,把该进程放人进程的就绪队列。进程调度程序选中它,为它分配CPU以及其它有关资源,该进程才真正运行。所以,进程是系统中的并发执行的单位。 在Mac、Windows NT等采用微内核结构的操作系统中,进程的功
2017-11-28 18:46:20 6315 3
原创 进程间的通信---信号灯
信号灯,也叫信号量,它是不同进程间或一个给定进程内部不同线程间同步机制。信号灯的使用一般配合共享内存使用,用以实现同步和互斥;编写步骤:1.使用ftok()函数获取key值;2.使用semget()函数创建一个信号灯;(注:在这之前必须要把共享内存创建好,具体方法上篇博客有详细方法)3.使用semctl()函数初始化信号量,(注:在这之前要先定义一个共用体,在Linux里可以通
2017-11-17 22:21:47 819
原创 进程间的通信---消息队列
消息队列:队列是先进先出,把写入的消息按队列的方式排列,然后读取消息时按队列性质读取,或按指定的类型号读取;实现消息队列的步骤:1.获取key值,2.创建消息队列,取得消息队列的ID;3.向消息队列里写入消息;4.读取消息队列的消息;5.删除消息队列;读端代码:#include #include #include #include #incl
2017-11-16 22:18:07 229
原创 进程间的通信---共享内存
共享内存是一种最为高效的进程间通信方式,进程可以直接读写内存,而不需要任何数据的拷贝;但是在使用共享内存时,可能会出现多个进程共享一段内存,因此要依靠某种同步机制解决,如:互斥锁,信号量;实现共享内存的四大步骤:1.创建或打开共享内存;2.映射共享内存,即把指定的共享内存映射到进程的地址空间用于访问;3.撤销共享内存映射;4.删除共享内存对象;示例代码如下:读端:
2017-11-15 22:47:24 303 1
原创 进程间的通信----有名管道fifo
write端:#include #include #include #include #include int main(int argc, const char *argv[]){if(access("./myfifo",F_OK) {if(mkfifo("./myfifo",0644) {perror("mkfifo fail\n");r
2017-11-14 22:06:01 287
原创 I2C总线
I2C总线:有两根线,一根SCL线,一根SDA线。、1.总线上数据的有效性 IIC总线是以串行方式传输数据,从数据字节的最高位开始传送,每一个数据位在SCL上都有一个时钟脉冲相对应。 在时钟线高电平期间数据线上必须保持稳定 的逻辑电平状态,高电平为数据1,低电平为数据0。 只有在时钟线为低电平时,才允许数据线上的电平状态
2017-11-12 10:09:03 781
原创 蜂鸣器驱动代码
驱动程序:beep_drv.c[cpp] view plain copy#include #include #include #include static int beep_major = 0; static struct class *pClass = NULL; module_para
2017-11-09 13:08:53 9655 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人