一些系统相关的说明

这一篇应该比前两篇先发的...结果我忘了...现在补上来...


 
原来自学过几次linux,但都没怎么实践(其实这次也是...).很多时候知识点还是混乱的.经过上学期的汇编总结,发现总结一下知识点还是蛮有好处的.自己在整理过程中,相当于是反刍了一次知识.也把遇到的一些问题更深入的探究了一番,所以这次继续上次的形式~
 
 
 
1.一些系统相关的说明性的东西
 
1.1头文件保留字的规则:
 
--以字母E后随一数字或大写字母开的头名字,保留作为错误代码名
 
--以’ls’或’to’后随一小些字母开头的名字,保留作为说明地区属性的宏名
 
--以’LC_’后随一大写字母开头的名字,保留作为说明地区属性的宏名
 
--所有以’f’或’l’为后缀的数字函数名字,保留用于对float和long double类型的数据进行运算的函数.
 
--以’SIG’后随一大写字母开头的名字,保留用于信号数
 
--头文件<fcntl.h>保留以’l_’,’F_’,’O_’和’S_’为前缀的名字
 
--头文件<limits.h>保留以’_MAX’为后缀的名字
 
--头文件<signal.h>保留以’sa_’和’SA_’为前缀的名字
 
--头文件<sys/stat.h>保留以’st_’和’S_’为前缀的名字
 
--头文件<sys/times.h>保留以’tms_’为前缀的名字
 
1.2 特征测试宏
 
通常以一个下划线开头’_’.下面列出几个,但是具体的有很多,到时候用到再搜索吧.
 
如下:
 
__USE_POSIX,__USE_POSIX2,__USE_XOPEN,_POSIX_SOURCE.
 
估计这些都可以在相关头文件中找到定义吧.
 
 
 
1.3错误处理
 
这里主要是说明变量errno.被系统调用和库函数用来报告错误.
 
并且在多线程的程序中,每个线程都有一个errno.
 
在标准C中,可以用strerror来返回错误信息的串.
 
用perror可以直接显示相关的错误信息.不过参数是个串..也就是错误信息串..
 
 
 
1.4 系统标识
 
gethostname可以得到主机的名字.
 
sethostname 可以设置主机的名字
 
uname 可以通过参数得到操作系统和主机的信息,具体包含操作系统名,计算机的主机名,操作系统的当前版本号,操作系统当前版本内的级别号,还有使用的硬件类型.
 
 
 
1.5 系统能力限制
 
--运行时的不变值
 
--运行时可增加值
 
--路径名可变值
 
--数值限制值,主要是与数的表示有关的限制值.
 
--其他不变值.最大消息数(NL_MSGMAX),默认的进程优先数(NZERO)等.
 
--最小值
 
--最大值
 
这些东西基本都可以在APUE上面找到.
 
也可通过sysconf来查,不过参数也是需要查的......
 
相关的函数有pathconf和fpathconf.这两个是查询文件系统相关参数的.

推荐阅读:

Linux 多线程同步(信号量)

Linux C++动态链接库so编写

Linux多线程──主线程和子线程分别循环一定次数

Linux多线程──3个子线程轮流运行

Linux多线程──生产者消费者

Linux多线程──读者写者问题

Linux基础编程 多线程中的互斥锁 pthread_mutex_lock

Linux基础编程 多线程同步 pthread_cond_signal

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/dbc4bf7056c32a21625e8a4f8781a776.html