zoukankan      html  css  js  c++  java
  • linux进程管理(linux命令安装、进程生命周期、进程状态)

    1 linux下如何杀掉进程

      1)找到包名所占用的端口: ps aux | grep cbs_portal-1.0.1.jar(包名)
      2)杀掉进程: kill 10942(端口号)
    PS:
    //--color=auto 表示默认显示匹配到的字符串。也可以设置其他颜色,没有这个参数当然是默认的颜色了。(不用删除)
    ps -aux 显示所有包含其他使用者的行程

    如图: 

     

    2 linux添加文件权限

    //设置文件夹的读写权限:读取权限 r = 4 ;写入权限 w = 2 ;执行权限 x = 1 
     sudo chmod -R 777 /data
    //权限码描述, -R表示包含设置所有子目录(递归)
    sudo chmod 600 ××× (只有所有者有读和写的权限)
    sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
    sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
    sudo chmod 666 ××× (每个人都有读和写的权限)
    sudo chmod 777 ××× (每个人都有读和写以及执行的权限)
    chmod +x的意思就是给执行权限

    3 linux查看端口占用情况

    端口占用情况,命令如下:netstat -ltn

    4 linux 重命名

    //ex:将目录A重命名为B
    mv A B

    5 linux查看日志文件

    查看日志文件的linux命令:tail、tac、cat等。

    //tail 命令详解,语法:tail [参数][文件]
    参数:
    -f 循环读取
    -q 不显示处理信息
    -v 显示详细的处理信息
    -c<数目> 显示的字节数
    -n<行数> 显示文件的尾部n行内容
    --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
    -q ,--quiet,--silent从不输出给出文件名的首部
    -s,--sleep-interval=S与-f合用,表示在每次反复的间隔休眠S秒
    ex:
    tail -100f  文件名 #实时查看日志文件 后一百行
    tail -f -n 100 catalina.out  文件名 #linux查看日志后100行

     6 进程、线程、协程之间的关系

    操作系统以进程为单位,分配系统资源(CPU时间片、内存等资源),进程是资源分配最小的单位。

    进程管理:主要包括7个方面。

    1. 进程调度
    2. 中断处理
    3. 信号
    4. 进程优先级
    5. 上下文切换
    6. 进程状态
    7. 进程内存

    进程:一个进程是一个运行在处理器的程序的一个实例。该进程使用linux内核能够处理的任何资源来完成它的任务。

    进程间通讯:管道(Pipe)、命名管道(FIFO)、消息队列(Message Queue)、信号量(Semaphore)、共享内存(Shared Memory)、套接字(Socket)。

    线程:轻量级进程,是操作系统调度(CPU调度)执行的最小单位。

    调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位。

    并发性:进程之间可以并发执行,同一个进程的多个线程之间也可以并发执行。

     https://blog.csdn.net/daaikuaichuan/article/details/82951084

    6.1 进程生命周期

      linux操作系统属于多任务操作系统,系统中的每个进程能够分时复用CPU时间片,通过有效的进程调度策略实现多任务并行执行。而进程在被CPU调度运行,等待CPU资源分配以及等待外部事件时会属于不同的状态。

    进程的三种基本状态:

    就绪状态:进程已得到运行所需资源,只等待CPU的调度便可运行。

    运行状态:进程已得到运行所需资源,并且得到了CPU的调度。

    等待状态[阻塞状态]:不具备运行条件、等待时机的状态。

    进程的三态图和五态图,各状态转换之间的关系:

    • 就绪->运行:条件被调度程序选中。
    • 运行->就绪:条件是时间片到[超时],或被更高优先级的进程剥夺。
    • 运行->等待:条件不具备运行条件,等待某一事件的发生。
    • 等待->就绪:条件是等待的事件已发送,具备了运行条件。

    6.2 进程死锁

      进程管理是操作系统的核心,设计问题可能会导致死锁。比如一个进程在等待一个不可能发生的事情,则进程就死锁了。

    6.3 上下文切换

    进程运行过程中,进程的运行信息被保存于处理器的寄存器和它的缓冲中。

    上下文:正在执行的进程加载到寄存器中的数据集

    上下文切换:为了切换进程,运行中进程的上下文将会被保存,接下来的运行进程的上下文将被恢复到寄存器中。进程描述和内核模式堆栈的区域将会用来保存上下文。

    上下文切换造成的影响:会引发性能问题,处理器每次都必须清空刷新寄存器和缓存,为新的进程制造空间。

    上下文切换图:

    6.4 中断处理

    中断处理是优先级最高的任务之一。中断产生:I/O设备产生,比如网络接口卡、键盘、磁盘控制、串行适配器等等。

    中断原理:中断处理器通过一个事件通知内核(例如,键盘输入、以太网帧到达等)。它让内核中断进程的执行,并尽可能快地执行中断处理,为另一些设备进行快速的响应。当一个中断信号到达内核,内核必须切换到当前进程到一个新的中断处理程序,就引起了上下文切换。

    linux有两种类型的中断:

    • 软中断:处理可以延迟的任务(TCP/IP操作,SCSI协议操作等)
    • 硬中断:请求响应的设备发出的(磁盘I/O中断、网络适配器中断、键盘中断、鼠标中断)。/proc/interruupts文件中查看硬中断信息。

    备注:在多处理器的环境中,中断被每一个处理器处理,绑定中断到单个的物理处理中能提高系统的性能。

    7 vim的安装

    //linux系统vim安装命令,ubuntu系统,普通用户下输入命令
    sudo apt-get install vim-gtk 
    
    //centos系统,普通用户下输入命令
    yum -y install vim*
    
    eg://如果安装不上,先更新apt-get,执行命令:sudo apt-get update
    sudo apt-get install vim-gtk
    //vi+tab键查看是否有vim命令,修改命令,语法高亮
    sudo vim /etc/vim/vimrc
    syntax on
    
    //vim常见配置命令修改
    set nu                           // 在左侧行号
    set tabstop                  //tab 长度设置为 4
    set nobackup               //覆盖文件时不备份
    set cursorline               //突出显示当前行
    set ruler                       //在右下角显示光标位置的状态行
    set autoindent             //自动缩进

    https://jingyan.baidu.com/article/046a7b3efd165bf9c27fa915.html

    8 ubuntu系统下安装tree命令

    ubuntu下类似的命令都可以用apt-get进行安装。

    sudo apt-get install tree

    安装完成后,查看安装的位置:

  • 相关阅读:
    Flink1.9重大改进和新功能
    【2020】DBus,一个更能满足企业需求的大数据采集平台
    大数据运维:大数据平台+海量数据
    大数据运维尖刀班 | 集群_监控_CDH_Docker_K8S_两项目_腾讯云服务器
    离线数仓和实时数仓架构与设计
    【全集】IDEA入门到实战
    Mysql快速入门
    RabbitMQ安装
    消息队列MQ简介
    C#特性
  • 原文地址:https://www.cnblogs.com/wendyw/p/11458417.html
Copyright © 2011-2022 走看看