一、程序:

1.在Linux中,触发任何一个事件是,系统都会将他定义为一个程序,并且给予这个程序一PID,同时依据启发这个程序的使用者与相关属性关系,给予这个PID一组有效的权限设定,从此以后,这个PID在系统上的动作,就与这个PID的权限有关了。

2.系统只认识二进制文件,让系统工作时,也是需要启动一个binary file,这个binary file就是程序。

3.程序与进程

  • 程序:通常是binary program,放在存储媒体(硬盘,软盘,光盘等)中,以实体文件形式存在。
  • 进程:程序被触发后,执行者的权限和属性、程序的程序代码与所需的数据等都会被加载到内存中,操作系统给予这个内存内中的这部分内容一个标识符PID,进程可以说是一个正在运行的程序。

二、子父程序与多人登陆

1.linux的多人多任务环境

  • 多人登入系统,取得各自的shell,当都是bash时,每个人执行的都是/bin/bash,但是,每个人的权限不一样。当我们登入系统中并执行bash时,系统已经已经给了我们一个PID了,这个PID就是根据登入着的UID/GID得到的。(linux中有6个命令行窗口,以及一个图形窗口。)
  • 多任务:linux可以让CPU在各个工作间进行切换,每个工作仅占去CPU的几个指令次数,目前CPU速度可达几个GHz,代表CPU每秒钟可以运作10的9次方次指令。

2.子程序和父程序:

  • 使用”ps -l“命令查看PID和PPID,其中PPID就是父进程的PID
  • 父进程与子进程的复杂点就是程序互相之间的呼叫。在linux中通常称为fork-and-exec的流程,程序会通过父程序以复制(fork)的方式产生一个一模一样的子程序,然后被复制出来的子程序在一exec的方式来执行实际要进行的程序,最终就成为一个子程序的存在。

三、工作管理

1.常用命令

  • &符号,在输完某个命令后,在结尾加上它就代表将这个命令在后台里运行。这时bash会给这个命令一个工作号码(job number)。(当命令执行完成后会自动跳出来提醒下。[job number]+)
  • 查看后台的工作状态:jobs命令
    • -l :除了列出job number与指令外,同事列出PID号码。
    • -r :仅列出正在后台run的工作
    • -s:仅列出正在后台中暂停的工作。
  • fg %num   将后台中工作号为num的任务扔到前台中运行
  • bg %num 将后台中暂停的命令变成在后台中继续运行
  • kill 
    • -1 :重新获取一次参数的配置文件(类似于reload)
    • -9 :立刻强制删除一个工作。
    • -15:以正常的程序方式终止一项工作。
    • *****    -L(也可以是小写) 打印出kill能使用的数字有哪些

四、程序管理

查询系统上正在运行中的程序,可以用静态的ps,动态的top,还能以pstree来查询程序书之间的关系

1.常见命令

  • ps命令

    • -A :所有癿 process 均显示出来,不 -e 具有同样的效用
    • -a :与 terminal (终端)无关的所有 process ;
    • -u :有敁使用者 (effective user) 相关癿 process ;
    • x :通常不 a 这个参数一起使用,可列出较完整信息。
      输出格式规划:
      l :较长、较详绅的将该 PID 的信息列出;
      j :工作的格式 (jobs format)
      -f :做一个更为完整的输出。  

程序管理与SElinux的更多相关文章

  1. linux 程序管理与SElinux

    此文涉及的命令:&.jobs.fg.bg.kill.nohup.ps.top.pstree.free.uname.uptime.netstat.dmesg.vmstat.fuser.lsof. ...

  2. linux备忘录-程序管理与SELinux

    知识点 程序与程序(Process and Program) 通过执行一条指令或程序,则可以触发一个事件,并获得一个PID.当我们需要启动一个程序时,我们是启动一个二进制文件(binary file) ...

  3. 鸟哥的linux私房菜——第十六章学习(程序管理与 SELinux 初探)

    第十六章.程序管理与 SE Linux 初探 在 Linux 系统当中:"触发任何一个事件时,系统都会将他定义成为一个程序,并且给予这个程序一个 ID ,称为 PID,同时依据启发这个程序的 ...

  4. 第十七章、程序管理与 SELinux 初探

    ---恢复内容开始--- 什么是程序 (process) 在 Linux 底下所有的命令与你能够进行的动作都与权限有关, 而系统依据UID/GID以及文件的属性相关性判定你的权限!在 Linux 系统 ...

  5. 第17章 程序管理与SELinux初探

    什么是进程 触发任何一个事件时,系统都会将它定义为一个进程,并且给予这个进程一个ID,称为PID,同时依据触发这个进程的用户与相关属性关系,给予这个进程一组有效的权限设置. 进程与程序 进程:执行一个 ...

  6. 第十七章、程序管理与 SELinux 初探 工作管理 (job control)

    工作管理 (job control) 这个工作管理 (job control) 是用在 bash 环境下的,也就是说:『当我们登陆系统取得 bash shell 之后,在单一终端机介面下同时进行多个工 ...

  7. 第十七章 程序管理与SELinux初探--进程、进程管理(ps、top)

    一个程序被加载到内存当中运行,在内存内的那个数据就被称为进程(process).进程是操作系统上非常重要的概念,所有系统上面跑的数据都会以进程的类型存在.系统进程有哪些状态?不同状态会如何影响系统的运 ...

  8. 鸟哥私房菜基础篇:程序管理与 SELinux 初探习题

    猫宁!!! 参考:http://cn.linux.vbird.org/linux_basic/0440processcontrol.php 1-简单说明什么是程序 (program) 而什么是程序 ( ...

  9. CentOS学习笔记--程序管理

    程序管理 一个程序被加载到内存当中运行,那么在内存内的那个数据就被称为程序(process).程序是操作系统上非常重要的概念, 所有系统上面跑的数据都会以程序的型态存在.那么系统的程序有哪些状态?不同 ...

随机推荐

  1. cs231n spring 2017 lecture13 Generative Models 听课笔记

    1. 非监督学习 监督学习有数据有标签,目的是学习数据和标签之间的映射关系.而无监督学习只有数据,没有标签,目的是学习数据额隐藏结构. 2. 生成模型(Generative Models) 已知训练数 ...

  2. POJ 2370 Democracy in danger(简单贪心)

    Democracy in danger Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3388   Accepted: 25 ...

  3. Codeforces Round #280 (Div. 2)_C. Vanya and Exams

    C. Vanya and Exams time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  4. 浅谈MySQL集群高可用架构

    前言 高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用.对于一个系统而言,可能包含很多模块,比如前端应用,缓存,数据库,搜索,消息队列等,每个模块都需要做到高可用,才能 ...

  5. c++中的overload、overwrite、override

    作为初学者,本文只从语法和简单的使用角度对overload.overwrite.override进行了区分,不曾涉及原理,记录下来以供查阅. 1.verload(重载) 1.1 基本要求: c++中的 ...

  6. QQ群友在线/离线,如何测试?

    上篇文章『QQ好友在线/离线,如何测试?』针对即时通讯的"状态"进行了分析和总结,主要说到了QQ好友在线/离线实现方案,测试过程中需要注意的测试点. 针对好友状态实时性的要求需要使 ...

  7. css之隐藏内容的方法

    css隐藏内容的方法有三种:即display:none.visibility:hidden.overflow:hidden. 1.display:none;的缺陷: 搜索引擎可能认为被隐藏的文字属于垃 ...

  8. 浏览器与CDN缓存行为

    @地址栏回车 1. 未过期: 浏览器拦截,直接返回: (expires/cache-control两个参数决定,如果两个参数都有,cache-control覆盖expires); 2. 已过期: et ...

  9. PHP过滤指定字符串,过滤危险字符

    安全过滤函数,用于过滤危险字符 function safe_replace($string) {  $string = str_replace(' ','',$string);  $string = ...

  10. PHP 获得当前页面所有变量常量的值

    get_defined_vars() - 返回由所有已定义变量所组成的数组,这个函数在二次开发的时候用起来非常给力: get_defined_constants();可以返回当前的所有常量 zend的 ...