linux系统之进程管理详解

linux系统之进程管理详解 进程Process 是计算机中的程序关于某数据集合上的一次运行活动是系统进行资源分配和调度的基本单位是操作系统结构的基础。 在当代面向线程设计的计算机结构中进程是线程的容器。程序是指令、数据及其组织形式的描述进程是程序的实体。是计算机中的程序关于某数据集合上的一次运行活动是系统进行资源分配和调度的基本单位是操作系统结构的基础。程序是指令、数据及其组织形式的描述进程是程序的实体。线程thread 是操作系统能够进行运算调度的最小单位。它被包含在进程之中是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流一个进程中可以并发多个线程每条线程并行执行不同的任务。2、什么是进程管理到底什么是进程呢进程是正在执行的一个程序或命令每一个进程都是一个运行的实体都有自己的地址空间并占用一定的系统资源。那么什么是程序呢程序是人使用计算机语言编写的可以实现特定目标或解决特定问题的代码集合。那我们换一种说法程序是人使用计算机语言编写的可以实现一定功能并且可以执行的代码集合。进程是正在执行中的程序。程序被执行时执行人的权限和属性、以及程序的代码都会被加载如内存操作系统给这个进程分配一个ID号我们成为PID进程ID3、进程管理的作用判断服务器健康状态运维工程师最主要的工作就是保证服务器安全稳定的运行。理想的状态是在服务器出现问题但是还没有造成服务器宕机或停止服务时就人为干预解决了问题。进程管理最主要的工作就是判断服务器当前运行是否健康是否需要人为干预。如果服务器的CPU占用率、内存占用率过高就需要人为介入解决问题了。查看系统中所有的进程我们需要查看系统中所有正在运行的进程通过这些进程可以判断系统中运行了哪些服务是否有非法服务运行。杀死进程这是进程管理中最不常用的手段当我需要停止服务时会通过正确关闭命令来停止服务如apache服务可以通过service httpd stop来关闭。只有当正确终止进程的手段失效的情况下才会考虑使用kill命令杀死进程你不是杀手不要什么进程都用kill来终止否则非常容易导致服务器崩溃4、Linux进程的几种状态D不可被唤醒的睡眠状态通常用于I/O情况。R该进程正在运行。S该进程在睡眠状态可被唤醒。T停止状态可能是在后台暂停或进程在除错状态。W内存交互状态从2.6内核开始无效。X死掉的进程应该不会出现。Z僵尸进程。进程已经终止但是部分程序还在内存当中。高优先级以下状态在BSD格式当中出现。N低优先级。L被锁入内存。s包含子进程。l多线程小写L。位于后台。5、进程与线程的关系1线程与进程的关系比如电脑同时进行着200个进程线程与进程概念线程 每个进程中至少包含一个线程而这些线程都在共享进程的资源空间等当线程发生变化的时候只会引起CPU执行的过程发生变化不会改变进程所拥有的资源。同理一个程序中至少包含一个进程。进程中执行运算的最小单位亦是执行处理机调度的基本单位进程 每个进程都有自己的地址空间资源如内存I/OCPU同一个进程里的 线程共享本进程里的地址空间那能不能使用别人家进程的地址空间呢显然这是不可以的。由于进程的独立性当某一个进程崩溃之后在保护模式下不会对别的进程进行影响。资源分配的基本单位运行调度的基本单位系统中并发执行的单位。两者的比较调度同一个进程中线程的切换不会引起进程的切换。由一个进程的线程切换到另一个线程的进程时引起进程的切换。并发性进程可以并发执行而一个进程中的线程也可以并发执行。拥有的资源一般来说线程并不会拥有自己的资源但是它可以访问自己本进程中的资源。比如一个进程打开的文件等进程中的其他线程是可以共享的。2总结我们简单总结下进程指在系统中正在运行的一个应用程序程序一旦运行就是进程进程是资源分配的最小单位。线程系统分配处理器时间资源的基本单元或者说进程之内独立执行的一个单元执行流线程是程序执行的最小单位。