UNIX 进程环境

UNIX 进程环境

第一次写博客,瞎写写~(下面是读书笔记)

第七章 UNIX进程环境

7.3 进程终止

mian函数的的 “return 0 ;” 等价于exit(0);
atexit函数定义如下。
int atexit(void (*fun)(void));
这函数的参数为函数地址,其功能用来注册额外的退出函数,最多注册32个,后注册先调用,注册多次可重复调用。
创建进程的唯一方式是调用exec,进程自愿终止的唯一方式为显示或隐式的调用exit

7.5 环境表

环境表是一个字符指针数组extern char** environ;

7.6 C程序(UNIX)的存储空间布局。

1.正文段(应该是代码段)
2.初始化数据段 (这个应该是存放一些全局变量的地方)
3.bss段,书上没讲明白留空——
4.堆
5.栈

7.7 共享库

7.8 存储器分配

7.9 环境变量

name=value
UNXI内核并不查看这些字符,他们的解释完成取决于各个应用程序。
getenv函数用于取得环境变量,获取登录名环境变量示例如下
#include<stdlib.h>
char* pEvn = getenv("LOGNAME");

7.10 setjmp和longjmp函数

具体用法
setjmp相当于设置一个还原点,longjmp通过设置的还原点回滚到此处,可以用来作为一些逻辑异常的处理。

7.11 getrlimit和setrlimit函数

这两个函数可以获取和更改进程的资源限制。
更改资源限制时,必须遵循下列三条规则

  1. 进程可以将其软限制更改为小于等于其硬限制的值。
  2. 任何进程都可以降低其硬限制,单他必须大于等于其软限制的值。这种降低对普通用户是不可逆的。
  3. 只有超级用户进程可以提高硬限制的值。
    具体用法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值