Linux编程开发
文章平均质量分 77
sinonion
原创内容,对自己负责,对读者负责。
展开
-
getopt_long 命令参数解析函数欣赏
getopt_long 命令参数解析函数欣赏函数原型#include int getopt_long(int argc, char * const argv[], const char *optstring, const struct option *longopts, int *longindex);输入参数int原创 2015-06-27 20:44:28 · 620 阅读 · 0 评论 -
Linux内核驱动模块测试 hello.ko
学习内核模块编程,第一个小程序当然是hello,kernel!了. 1.首先编写hello.c文件#include <linux/init.h>#include <linux/module.h>#include <linux/kernel.h>MODULE_LICENSE("GPL");static int hello_init(void){ printk(KERN_ALERT "h原创 2015-11-09 17:01:24 · 1669 阅读 · 0 评论 -
进程间通信之共享内存-系统调用mmap详解(基础篇)
系统调用和System V共享内存 (一) 介绍 管道和消息队列等通信方式,需要在内核和用户空间进行四次的数据拷贝;而共享内存只拷贝两次数据,一次从输入文件到共享内存区,另一次从共享内存区到输出文件; 进程之间在共享内存时,一直保持共享区域,直到通信完毕为止,这样,数据内容一直保存在共享内存中,并没有写回文件。共享内存中的内容往往是在解除映射时才写回文件的。因此,采用共享内存的通信方式效原创 2015-08-19 11:07:48 · 1618 阅读 · 0 评论 -
进程间通信之共享内存-SystemV shmxxx详解(IPC范例篇)
进程间通信之共享内存-SystemV shmxxx详解(IPC范例篇) (基础知识和基础用例看我前一篇博客) 范例2:两个进程通过指定名字的共享内存进行通信 适用于任何进程之间;此时,需要打开或创建指定名字的共享内存,然后再调用shmat()进行地址映射; shm_write.c首先打开或创建一个指定名字的共享内存,内存大小设置为16个people结构大小。然后从shmat()的返回原创 2015-09-09 22:00:43 · 751 阅读 · 0 评论 -
进程间通信之共享内存-SystemV shmxxx详解(基础篇)
进程间通信之共享内存-SystemV shmxxx详解(基础篇) (一) 介绍 如前文所述,系统调用mmap通过映射一个普通文件实现两个独立进程之间共享内存,而System V则不一样,为了在多个进程之间交换数据,内核专门留出了一块内存区域用于共享,所以需要共享这个内存区域的进程就只需要将该区域映射到本进程的地址空间中即可。 (二) 使用步骤 执行过程先调用shmget,获得或者创建一个IP原创 2015-09-09 20:09:27 · 4084 阅读 · 0 评论 -
进程间通信之共享内存-系统调用mmap详解(IPC范例篇)
IPC-进程间通信和同步之共享内存-系统调用mmap详解(IPC范例篇) (基础知识和范例1看我前一篇博客) 范例2:两个进程通过映射普通文件实现共享内存通信 适用于任何进程之间; 此时,需要打开或创建一个文件,然后再调用mmap(); mmap_write.c首先打开或创建一个文件,并把文件的长度设置为3个people结构大小。然后从mmap()的返回地址开始,设置了 10个peo原创 2015-08-19 11:22:03 · 762 阅读 · 0 评论 -
IPC - POSIX和System V比较
POSIX和System V比较(一)POSIX介绍 POSIX(Portable Operating System Interface)可移植操作系统接口,这样的简写完全是为了和UNIX读起来更像而已。它是有IEEE(电子和电气工程师协会)开发,由ANSI(美国国家标准化学会)和OSI(国际标准化组织)两个机构标准化。由于早起各厂家对UNIX的开发各自为政,互相竞原创 2015-08-17 14:52:58 · 3500 阅读 · 0 评论 -
线程间同步一 ———— 互斥锁(mutex)
线程间同步一 ———— 互斥锁(mutex) 应用实例/* 当主线程输入com_buf[]不为空时,子线程计算该com_buf的长度。 使用互斥锁来同步临界区,确保变量com_buf只被一个线程使用*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include <pthread.h>#define原创 2015-07-07 16:54:12 · 509 阅读 · 0 评论 -
IPC - Linux 消息队列函数及应用欣赏一
--------------------------------------应用实例--------------------------------------/* 创建消息队列msqid,终端输入字符串(<256bytes),存于msg0结构中,发送msg0消息到消息队列msqid, 然后再从此消息队列读出消息存于msg1结构中并输出。有重复了一次这个操作,只是这次用的字原创 2015-07-03 10:43:47 · 471 阅读 · 0 评论