zoukankan      html  css  js  c++  java
  • Linux 进程

    1. 进程:

    一个独立的可调度的任务
    执行一个程序所分配的资源的总称
    进程是程序的一次执行过程
    进程是动态的,包括创建、调度、执行和消亡

    2. 进程包含三个段:
    1)“数据段”存放的是全局变量、常数以及动态数据分配的数据空间(如malloc函数取得的空间)等。
    2)“正文段”存放的是程序中的代码
    3)“堆栈段”存放的是函数的返回地址、函数的参数以及程序中的局部变量

    3. 进程的类型:
    1)交互进程:交互进程既可以在前台运行,也可以在后台运行。
          该类进程经常与用户进行交互,需要等待用户的输入,当接收到用户的输入后,该类进程会立刻响应。
          该类型进程是shell控制和运行的
    2)批处理进程:该类进程不属于某个终端,它被提交到一个队列中以便顺序执行
    3)守护进程:该类进程在后台运行。它一般在Linux启动时开始执行,系统关闭时才结束。

    4. 进程的运行状态:
    1)运行态:此时进程或者正在运行,或者准备运行。

    2)等待态:此时进程在等待一个事件的发生或某种系统资源。
      可中断:处在这种状态下的进程可以被信号中断,接收到信号或被显示地唤醒呼叫,唤醒之后,进程将转变为运行态。
      不可中断:它不会处理信号,只有在它所等待的事件发生时,进程才被显示的唤醒。

    3)停止态:此时进程被中止。
    4)死亡态:这是一个已终止的进程,但还在进程向量数组中占有一个task_struct结构。
      task_struct 进程控制块(pcb)管理进程)

      1.进程标识pid
      2.文件描述符表
      3.进程的状态
      4.pc程序计数器(存放程序下一条指令的地址)

      前台进程:目前我们一直用的 +代表前台运行
      后台进程:在后台运行,只有输出,没有输入,没有 +代表 后台运行
      

    5. 修改进程运行时的优先级    PR=NI+20    NI [-20,19]  数字越小优先级越高

    1).nice:按用户指定的优先级运行进程

      nice -5 ./a.out 设置优先级为5

      sudo nice --3 ./a.out 设置优先级为-3

     



    2).renice:改变正在运行进程的优先级

      renice 5 PID

     

    修改为低优先级:

     

     修改为高优先级:

     6. 设置程序前后台运行

      (1) . 首先使用shell命令 : kill -l 查看进程信号   其中 9 是杀死进程的信号 使用 kill 9 PID 杀死一个进程

        2) SIGINT 停止信号,默认杀死进程。ctrl + c
        3) SIGQUIT 退出信号,默认也是杀死进程。 ctrl +
        9) SIGKILL 杀死进程,不能被忽略,不能被捕捉
        14)SIGALRM 闹钟信号,默认也是杀死进程
        17)SIGCHLD 儿子状态改变,内核会给它的父亲发送此信号
        18)SIGCONT 唤醒信号,唤醒之后变为后台运行
        19)SIGSTOP 暂停信号, 不能忽略,不能被捕捉
        20)SIGTSTP 暂停信号, ctrl + z

     

     (2).  直接启动时后台运行 ./a.out &   在运行程序后面添加一个 & 符号

    (3). 修改运行中的程序后台运行,先暂停在后台运行

      bg   将挂起的进程在后台执行,   bg 编号

      fg   把后台运行的进程放到前台运行,  fg 编号

      jobs 查看后台所有的进程,可以显示进程编号,

  • 相关阅读:
    iOS开发UI篇—使用storyboard创建导航控制器以及控制器的生命周期
    IOS开发UI篇—导航控制器属性和基本使用
    基于XMPP协议的aSmack源码分析
    XMPP-for-Android
    wecontact
    MyPhone
    Video conference server OpenMCU-ru
    WebRTC_Wrapper
    Sip-MCU
    WebRTC学习笔记
  • 原文地址:https://www.cnblogs.com/electronic/p/10923633.html
Copyright © 2011-2022 走看看