进程资源限制
1、每个进程都有一组相关的资源限制,限定制定了进程能使用的资源数量。这些现实避免用户过分使用系统资源(cpu、磁盘空间等)
1.1 进程地址空间的最大数 如malloc时候
1.2 内存信息转存文件大小
1.3 进程使用cpu的最长时间
1.4 堆大小的最大值
1.5 文件大小的最大值
1.6 文件锁的最大值
1.7 非交换内存的最大值
1.8 消息队列的最大字节数
1.9 打开文件描述符的最大值
1.10 用户拥有进程的最大数
1.11进程所拥有的页框的最大数
1.12进程 挂起信号的最大值
1.13 栈大小的最大值
进程切换
1、为了控制进程的执行,内核必须有能力挂起正在cpu上运行的进程,并恢复以前挂起的某个进程的执行,这种行为叫做进程切换。任务切换、或上下文切换。
硬件上下文:
尽管每个进程可以拥有属于自己的地址空间,但是所有的进程必须共享cpu寄存器,因此,在恢复一个进程的执行之前,内核必须确保每个寄存器装入了挂起进程时额值。
进程恢复执行前必须装入寄存器的一组数据称为硬件上下文。
创建进程
1、clone() fork() vfork()系统调用
轻量级进程由名为clone的函数创建。