进程相关知识简介

进程定义:

  一个运行中的程序即一个process

task struct:

  内核存储进程信息的固定格式称为task struct,task struct记录了例如该进程内存下一跳位置等信息。

task list:

  多个task struct组成的链表

进程的创建

  内核创建第一个进程init,用来管理用户控件所有进程

  所有用户空间都有init或其父进程创建

  父进程所指向的内存即其子进程所指向的进程。待“成熟”后子进程会复制一份父进程的内存空间中的数据,创建属于自己的内存空间。这种机制被称为fork,clone.

  父进程创建子进程的目的:让子进程来完成指定任务,完成后终止子进程。

进程的优先级:

  0~99:实时优先级,越大优先级越高

  100~139:静态优先级,越小优先级越高

  nice值:-20~+19

进程的优先级有什么作用?

  内核通过优先级来判断先后运行的程序。相同优先级的进程被分到同一队列(最多140个队列),从而无论进程有多少,内核每次只需遍历进程队列的首部,就可判定需运行哪个队列中的进程。

  每个优先级队列分为两层分别是:已运行过的队列和未运行过的进程。

进程内存:

  page frame:内核将内存分为若干份,每份4k即page frame。

  进程所占用的内存都是经过内核将若干连续或间断的page frame ,虚拟成的虚拟内存。

linux进程分类:根据进程占用CPU高还是IO高可分为

  CPU-Bound:cpu密集型

  IO-Bound:IO密集型

linux进程类型:

  守护进程:与终端无关,在系统启动过程中启动的进程

  前台进程:与终端相关,通过终端启动。

  前台进程可以送往后台,以守护模式运行。

linux进程状态:

  R:running:运行态

  S:interruptable:可中断睡眠状态,大多数进程处于此状态。处于这个状态的进程因为等待某事件的发生(比如等待socket连接、等待信号量),而被挂起。

  D:uninterruptable:不可终端睡眠状态,不可中断,指的并不是CPU不响应外部硬件的中断,而是指进程不响应异步信号。该状态存在的意义就在于,内核的某些处理流程是不能被打断的。

  T:stopped:停止态

  Z:zombie:僵死态,子进程终止后等待父进程“收尸”,或其父进程挂掉子进程成为孤儿进程。

  linux进程状态详情可参考:http://blog.csdn.net/shenwansangz/article/details/51981459

  

  

linux 进程简介的更多相关文章

  1. 使用Supervisor管理Linux进程

    使用Supervisor管理Linux进程 简介 Supervisor是一个C/S系统,它可以在类UNIX系统上控制系统进程,由python编写,提供了大量的功能来实现对进程的管理. 安装 sudo ...

  2. linux进程编程:子进程创建及执行函数简介

    linux进程编程:子进程创建及执行函数简介 子进程创建及执行函数有三个: (1)fork();(2)exec();(3)system();    下面分别做详细介绍.(1)fork()    函数定 ...

  3. linux 文件系统简介

    linux文件系统简介   文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基 ...

  4. linux 进程管理相关内容

    简介 当我们运行程序时,Linux会为程序创建一个特殊的环境,该环境包含程序运行需要的所有资源,以保证程序能够独立运行,不受其他程序的干扰.这个特殊的环境就称为进程. 每个 Linux 命令都与系统中 ...

  5. Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装

    原文:Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装 Linux内核分析(一) 从本篇博文开始我将对linux内核进行学习和分析,整个过程必将十分艰辛,但我会坚持到底 ...

  6. 第2课 Linux操作系统简介

    1. Linux操作系统的构成 (1)内核(kernel) ①操作系统的核心,负责管理系统的进程.内存.设备驱动程序.文件和网络系统. ②控制系统和硬件之间的相互通信. ③决定着系统的性能和稳定性. ...

  7. Linux内核分析——第一章 Linux内核简介

    第一章   Linux内核简介 一.Unix的历史 1.Unix系统成为一个强大.健壮和稳定的操作系统的根本原因: (1)简洁 (2)在Unix中,很多东西都被当做文件对待.这种抽象使对数据和对设备的 ...

  8. 2013337朱荟潼 Linux第一章读书笔记——Linux内核简介

    一.Unix历史 二.Linux足迹 类Linux系统.非商业化产品.用途广泛 三.操作系统和Linux内核简介 1.操作系统 (1)是指在整个最基本功能系统中负责完成最基本功能和系统管理的部分. ( ...

  9. Linux进程数据结构详解

    1.Linux的进程简介: 支持多线程的操作系统中,进程是资源分配的最小单位,线程是调度的基本单位.Linux是现代的32位或64位的支持多线程的操作系统,不过Linux是一种以轻量级进程作为线程,多 ...

随机推荐

  1. 2019-2020-1 20199314 《Linux内核原理与分析》 第八周作业

    可执行程序工作原理. 1.ELF(Executable and Linkable Format)可执行和可链接文件,其包含了以下三类: 可重定位文件(Relocatable File):保存着代码和适 ...

  2. [Hadoop]Hive-1.2.x安装配置+Mysql安装

    HIve的元数据存储在mysql中,需要配置与MySQL建立连接,除了安装MySQL外还要安装连接的jar包:mysql-connector-java-5.1.47.tar.gz   安装环境:Cen ...

  3. [考试反思]0921csp-s模拟测试49:困顿

    太弱.还是太弱. 拉不开分差,离第一机房分数线估计还是300多分. 但是,还是要骂:XX出题人. 部分分非常少且没有意义,T1基本只有0/纯暴力20/100三个档, T2正解是n2但是n3一分不给,还 ...

  4. CSPS_105

    不想多说... T1 是$1$还是$26^n-1$ T2 是$f[getf(u)]=getf(v)$还是$f[u]=v$ T3 是$if(condition1\&\&condition ...

  5. CSPS模拟99

    555我原型笔录 T1 不会线段树维护单调栈被dalao们踩爆 T2 我要实现这样一个东西: 已知a,b,c,使a=a-b,b=b-c 结果我把代码弄成这样: b=b-c;a=a-b; 然后就被dal ...

  6. Apache服务部署静态网站

    Web网络服务也叫WWW(World Wide Web),一般是指能够让用户通过浏览器访问到互联网中文档等资源的服务. 目前提供WEB网络服务的程序有Apache.Nginx或IIS等等,Web网站服 ...

  7. 20190725 NOIP模拟8

    今天起来就是虚的一批,然后7.15开始考试,整个前半个小时异常的困,然后一看题,T1一眼就看出了是KMP,但是完了,自己KMP的打法忘的一干二净,然后开始打T2,T2肝了一个tarjan点双就扔上去了 ...

  8. Spring Boot 2.X(十六):应用监控之 Spring Boot Actuator 使用及配置

    Actuator 简介 Actuator 是 Spring Boot 提供的对应用系统的自省和监控功能.通过 Actuator,可以使用数据化的指标去度量应用的运行情况,比如查看服务器的磁盘.内存.C ...

  9. 你真的会写单测吗?TDD初体验

    前言: 昨天读到了一篇文章,讲的是TDD,即Test-Driven Development,测试驱动开发.大体意思是,它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过 ...

  10. hexo搭建简易的博客网站

    0.环境检测 1.系统升级(图形更新) #update-manager 检测状态 2.检测升级(命令更新) #sudo apt update #sudo apt -y dist-upgrade 一.安 ...