摘要:
1、基本概念 共享内存是IPC机制中的一种,它允许两个不相关的进程访问同一段内存,这是传递数据的一种非常有效地方式。 2、函数学习 1)创建和打开共享内存: 函数名:shmget 函数原型:Int shmget(key_t key,size_t size,int shmflg); 头文件:<sys/ 阅读全文
摘要:
2.1下载Eclipse 2.2 安装C/C++版本的Eclipse 2.3 安装JDT插件开发Java程序 2.4 使用Eclipse开发驱动程序 既然安装了eclipse来进行驱动学习,那么我们就先来试试看eclipse开发驱动的大致流程。这里以Linux设备驱动作为示列给读者展示整个流程,An 阅读全文
摘要:
1.1 使用VMware安装Ubuntu 1.1.1 准备工作 1)VMware的安装包 VMware至少要用10.0版本,本文采用最新的VMware12版本,这个版本对USB3.0的支持更加完善稳定,如果安装了10.0以上版本的可以通过VMware的help菜单选项直接升级,关于VMware的安装 阅读全文
摘要:
进程同步:一组并发进程进行相互合作、互相等待,使得各进程按一定的顺序执行的过程。 生产者和消费者问题 A生产产品,B取走产品, 让信号量初值为0,生产者不用获取信号量,但要释放信号量1. 消费者要获取信号量,但不用释放信号量0. 生产者producer.c customer.c 先执行: ./pro 阅读全文
摘要:
信号量同步的概念: 一组并发进程进行相互合作、相互等待,使得各进程按一定的顺序执行的过程称为进程间的同步。 customer.c product.c 运行生产者 运行消费者: 阅读全文
摘要:
在程序中利用信号量互斥来解决公示板问题 背景知识 1、信号灯的概念 信号灯,又被称为信号量(semaphore),是IPC(进程间通信)的方式之一。它可以用来保证两个或多个关键代码段不被多个进程并发调用。每个信号灯都有个semval,用于记录信号灯的值。在进入一个关键代码段之前,进程必须获取一个信号 阅读全文
摘要:
编写两个应用程序,利用两个进程进行信号通信 1、信号的概念:是一种进程间通信机制,它给应用程序提供一种异步的软件中断,使应用程序有机会接受其他程序或终端发送的命令(即信号)。应用程序收到信号后,有三种处理方式:忽略,默认,或捕捉。进程收到一个信号后,会检查对该信号的处理机制。如果是SIG_IGN,就 阅读全文
摘要:
创建2个进程,在A进程中创建一个有名管道,并向其写入数据,通过B进程从有名管道中读出数据。 有名管道又称命名管道,可用于无亲缘关系的进程之间通信,在某些特点上类似于文件。 用法:通过mkfifo创建有名管道,之后就可以想操作普通文件通过open()、close()、write()、以及read()对 阅读全文
摘要:
创建无名管道用于父子间进程通信。 1、无名管道概念:无名管道又称pipe,是Linux所支持的IPC方式的一种,它具有以下特点: 1)只能用于具有血缘关系的进程之间。 2)属于半双工的通信模式,具有固定的读端和写端 3)是一种特殊的文件,存在于内存中,可通过read、write对其操作。 2、无名管 阅读全文
摘要:
头文件:#include<stdlib.h> 函数原型:int system(const char *command) 参数说明:command被执行的命令,字符串格式 返回值:成功则返回一个状态值,失败返回-1. 总结:执行system函数会新创建出一个进程去执行shell命令。 阅读全文