Linux环境高级编程(W.Richard Stevens)
文章平均质量分 65
stevens_fjt
这个作者很懒,什么都没留下…
展开
-
Linux系统调用列表(收藏)
以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数。这可能是你在互联网上所能看到的唯一一篇中文注释的Linux系统调用列表,即使是简单的字母序英文列表,能做到这么完全也是很罕见的。 按照惯例,这个列表以man pages第2节,即系统调用节为蓝本。按照笔者的理解,对其作了大致的分类,同时也作了一些小小的修改,删去了几个仅供内核使用,不允许用户调用的系统调用转载 2012-10-19 09:37:11 · 583 阅读 · 0 评论 -
RHEL5 Linux下安装CodeBlocks
千万要注意Codeblocks和wxWidgets的版本要与linux系统兼容 对于: source软件包,用./configure,make,make install 三步便可(.tar.gz,.tar.bz2) binary软件包,用rpm命令,等效于windows下的.exe文件 1. 安装code::Blocks1.1 安装wxGTK原创 2012-11-28 09:23:03 · 1692 阅读 · 0 评论 -
关于SIGPIPE导致的程序退出
在Unix系统下,如果send在等待协议传送数据时网络断开的话,调用send的进程会接收到一个SIGPIPE信号,进程对该信号的默认处理是进程终止。在Unix系统下,如果recv函数在等待协议接收数据时网络断开了,那么调用recv的进程会接收到一个SIGPIPE信号,进程对该信号的默认处理是进程终止。处理方法:在初始化时调用signal(SIGPIPE,SIG_IGN)忽略该信号(只需转载 2012-11-10 14:29:29 · 1135 阅读 · 0 评论 -
[技术学习]配合APUE学习贴篇select实现原理分析
http://blog.csdn.net/thinkhy/article/details/3737043 Select函数实现原理分析 select需要驱动程序的支持,驱动程序实现fops内的poll函数。select通过每个设备文件对应的poll函数提供的信息判断当前是否有资源可用(如可读或写),如果有的话则转载 2012-11-07 19:55:56 · 523 阅读 · 0 评论 -
[技术学习]UNIX环境高级编程(APUE)学习记录
http://blog.csdn.net/thinkhy/article/details/3729615 运行环境:Linux thinkhy-laptop 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686 GNU/Linux线程模型:posixgcc 版本 4.1.3 20070929 (prerelease转载 2012-11-07 19:55:03 · 566 阅读 · 0 评论 -
使用#include <pthread.h>
在Linux中使用线程相关的东西就要使用到这个头文件,但这还不算。如果仅仅使用这个头文件,会出现错误: undefined reference to `pthread_create'collect2: ld returned 1 exit statusmake: *** [threadid] Error 1 之所以出现这样的错误,是原创 2012-11-02 16:56:13 · 6201 阅读 · 0 评论 -
C寄存器变量、局部静态变量、自动变量效率对比
总共有auto,static,register,extern C语言提供了另一种变量,即寄存器变量。这种变量存放在CPU的寄存器中,使用时,不需要访问内存,而直接从寄存器中读写,这样可提高效率。 寄存器变量是个临时变量,当调用完之后,会自动释放,以节约内存空间,提高程序效率。 寄存器变量没有地址,没有地址就不能用指针变量指向它。 寄存器变量的说明符是regis转载 2012-10-24 14:48:13 · 3611 阅读 · 0 评论 -
设备文件
设备文件是用来表示Linux所支持的大多数设备的,每个设备文件除了设备名,还有三个属性:即类型、主设备号、次设备号。设备文件是通过mknod系统调用创建的。其原型为: mknod(const char * filename, int mode, dev_t dev) 其参数有设备文件名、操作模式、主设备号及次设备号。最后两个参数合并成一个16位的dev_t无符号短整数,高8位用转载 2012-10-22 21:57:18 · 888 阅读 · 0 评论 -
学习linux/unix编程方法的建议,学习Linux的四个步骤
假设你是计算机科班出身,计算机系的基本课程如数据结构、操作系统、体系结构、编译原理、计算机网络你全修过我想大概可以分为4个阶段,水平从低到高从安装使用=>linux常用命令=>linux系统编程=>内核开发阅读内核源码其中学习linux常用命令时就要学会自己编译内核,优化系统,调整参数安装和常用命令书太多了,找本稍微详细点的就ok,其间需要学会正则表达式系统编程推荐《高级uni转载 2012-10-30 14:00:11 · 563 阅读 · 0 评论 -
《UNIX环境高级编程》的笔记
第1章:UNIX基础知识第1章:UNIX基础知识 ①UNIX体系结构中,最主要的是内核,它有一些称为系统调用的接口与外界交互。在内核之上有shell 和库函数,然后是应用软件。 ②常见的shell有Bourne shell(sh), Bourne_again shell(bash), C shell(csh), Korn shell(ksh), TENEX C shell(tcsh)。 ③不能转载 2012-10-21 13:29:01 · 857 阅读 · 0 评论 -
unix环境高级编程 err文件
#include "apue.h"#include /*for definition of errno*/#include /*ISO C varialbe aruments*/static void err_doit(int,int,const char*,va_list);/**Nonfatal error related to a system cal原创 2012-10-19 21:27:01 · 850 阅读 · 0 评论 -
unix环境高级编程 apue.h文件
/* Our own header, to be included before all standard system headers */ #ifndef _APUE_H #define _APUE_H #define _XOPEN_SOURCE 600 /* Single UNIX Specification, Version 3 */ #inclu原创 2012-10-19 21:26:14 · 564 阅读 · 0 评论 -
rhel上配置apue.h及err_sys出错处理
一、apue.h源码安装1.APUE2源代码下载:http://www.apuebook.com/src.tar.gz2.我保存到了/root下.解压缩:tar -xzvf src.tar.gz3.cd apue.2e进入apue.2e目录,查看README,告诉我们linux系统只要修改Make.defines.linux再make4.vi Make.defines.linux转载 2012-10-19 21:48:02 · 956 阅读 · 0 评论