码迷,mamicode.com
首页 >  
搜索关键字:linux环境编程    ( 56个结果
Linux环境编程之信号(三):一些信号函数
(一)kill和raise函数 kill函数将信号发送给进程或进程组。raise函数则允许进程自身发送信号。        #include        #include        int kill(pid_t pid, int sig);        int raise(int  signo);  //返回值:若成功则返回0,若出错则返回-1。 参数:pid参数有4种...
分类:系统相关   时间:2014-05-18 08:50:13    阅读次数:360
Linux环境编程之信号(二):不可靠信号、中断的系统调用、可重入函数
(一)不可靠信号 对前面说的信号,是不可靠的,不可靠指的是信号可能会丢失:一个信号发生了,但进程却可能一直不知道这一点。另外,进程对信号的控制能力有限,只能捕捉信号或忽略它。有时用户希望通知内核阻塞一个信号:不要忽略它,在其发生时记住它,然后在进程做好准备时再通知它。这种阻塞信号的能力并不具备。 之前的版本中村咋一个问题:在进程每次接到信号对其进行处理时,随即将该信号动作复位为默认值。另一个问...
分类:系统相关   时间:2014-05-18 06:48:10    阅读次数:290
Linux环境编程之进程(六):进程组
进程组 每个进程除了有一个进程ID之外,还属于一个进程组。进程组是一个或多个进程的集合。每个进程组有一个唯一的进程组ID。进程组ID类似于进程ID——它是一个整数,并可存放在pid_t数据类型中。函数getpgrp返回调用进程的进程组ID。 每个进程组都可以有一个组长进程。组长进程的标识是,其进程组ID等于其进程ID。组长进程可以创建一个进程组,创建该组中的进程,然后终止。只要在某个进程组中有...
分类:系统相关   时间:2014-05-15 18:39:39    阅读次数:393
Linux环境编程之进程(四):创建新进程、执行程序和进程终止
引言: 对于每个进程,都有一个非负整数表示的唯一进程ID。虽然进程的ID是唯一的,但却是可重用的。系统中有一些专用的进程。如ID为0的进程通常是调度进程,也成交换进程或系统进程(它是内核进程)。进程ID为1通常是init进程,它是一个普通的用户进程。一些与进程ID有关的函数: #include pid_t getpid(void);   //返回值:调用进程的进程ID pit_t get...
分类:系统相关   时间:2014-05-15 13:15:26    阅读次数:482
Linux环境编程之进程(五):竞争条件以及exec函数
(一) 当多个进程企图对共享数据进行某种处理,而最后的结果又取决于进程运行的顺序时,就认为它们发生了竞争关系。避免竞争的条件,给出apue上的一个代码吧: #include "apue.h" static void charatatime(char *); int main(void) { pid_t pid; TELL_WAIT(); /*set things up for TEL...
分类:系统相关   时间:2014-05-15 12:20:22    阅读次数:408
Linux环境编程之文件I/O(八):文件链接
引言: 执行如下命令时,ls /usr/local/lib/libfreetype.so -l显示内容: lrwxrwxrwx 1 root root 20 2014-04-06 22:57 /usr/local/lib/libfreetype.so -> libfreetype.so.6.9.0 表明这是一个链接文件,通过链接可以实现对一个文件从不同路径对它进行引用。对于文件的链接有硬链接...
分类:系统相关   时间:2014-05-15 03:39:10    阅读次数:381
Linux环境编程之进程(三):函数间跳转
引言:在编写程序时,经常在函数内部使用goto语句来跳转,从而进行出错处理,那么如果想要在函数之间进行跳转该怎么做呢?使用setjmp和longjmp函数。 给出示例程序: #include #include #include static void f1(int, int, int, int); static void f2(void); static jmp_buf jmpbu...
分类:系统相关   时间:2014-05-15 02:44:22    阅读次数:335
Linux环境编程之进程(二):程序的存储空间布局
引言: 一个写好的程序一般要存放在存储器中,那么程序中的代码、数据等各部分,是如何有规律的存放在存储器中的呢? (一) 一个存储的程序可分为五部分:正文段、初始化数据段、非初始化数据段、栈、堆。其典型的存储安排如下图: 正文段:这是由CPU执行的机器指令的部分。通常,正文段是可共享的,所以即使是频繁执行的程序在存储器中也只需要一个副本,另外正文段常常是只读的,以防止程序由于意外而修...
分类:系统相关   时间:2014-05-14 21:42:57    阅读次数:604
Linux环境编程之进程(一):main函数调用、进程终止以及命令行参数和环境表
(一)main函数调用 main函数作为程序运行时的入口函数,它是如何被调用的呢?首先必须清楚一点,main函数也是一个函数,它只有被调用才能够执行。其实,在执行可执行程序时,在调用main函数之前,内核会先调用一个特殊的启动例程,将此启动例程作为可执行程序的起始地址。启动例程是如何作为可执行程序的起始地址的?这是由链接编译器设置的,而链接编译器则是由C编译器(如gcc编译器)调用的。启动例程作...
分类:系统相关   时间:2014-05-14 19:43:53    阅读次数:479
Linux环境编程之文件I/O(六):文件属性
引言: 在Linux中使用ls -l filename命令查看filename的属性时,会列出文件的9种属性,例如:ls -l /etc/fstab  -rw-r--r-- 1 root root 1102 2013-10-12 02:33 /etc/fstab 从左到右分别是类型与权限、文件个数、该文件或目录的拥有者、所属的组、文件大小、创建时间、文件名 以上这些文件属性的信息...
分类:系统相关   时间:2014-05-13 11:30:43    阅读次数:529
56条   上一页 1 ... 3 4 5 6 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!