kill linux 苹果_Linux命令之kill

kill [-s signal | -p] [ --] pid…

kill –l [signal]

终止指定进程。命令kill将指定的信号发送到指定的进程或进程组。如果没有指定信号,则发送SIGTERM信号。SIGTERM信号将终止不捕获该信号的进程。对于其他进程,可能需要使用kill(9)信号,因此此信号无法捕获。

如今大所述shell都有内置的kill函数,其用法与此描述的命令非常相似。’-a’和’-p’选项以及通过命令名指定pids的可能性是本地扩展。

如果sig为0,呢不发送任何信号,但人会执行错误检测。

(1).选项

pid… 指定kill应该放出信号的进程列表。每个pid可以是以下五个之一:

n 其中n大于0。发出信号给pid为n的进程

0 发信号通知当前进程组中的所有进程

-1 发信号给pid大于1的所有进程

-n 其中n大于1。发送信号给进程组n中所有进程。当给出一个形式为-n的参数时,它表示一个进程组,而且必须首先指定信号,或者该参数前面必须是--选项,否则它将被视为发送的信号。

commandname 发送信号给使用该名称调用的所有进程

-s signal 指定要发送的信号,信号可以是信号名称或数字。

-l 打印型号名称列表。可以在/usr/include/linux/signal.h中找到

-a 当处理进程时,不限制命令名和进程号的对应关系

-p 指定kill只打印指定进程的进程ID(pid),而不发送任何信号。

(2).实例

列出所有信息,kill -l

[root@CentOS6 桌面]# kill -l

1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP

6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1

11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM

16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP

21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ

26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR

31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3

38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8

43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13

48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12

53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7

58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2

63) SIGRTMAX-1 64) SIGRTMAX

只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略,下面是常用的信号:

SIGHUP 1 终端断线

SIGINT 2 中断(同 Ctrl + C)

SIGQUIT 3 退出(同 Ctrl + \)

SIGKILL 9 强制终止

SIGTERM 15 终止(正常结束) ,缺省信号

SIGCONT 18 继续(同fg/bg命令)

SIGSTOP 19 停止

SIGTSTP 20 暂停(同 Ctrl + Z)

显示指定信号的数值,可以看到有没有前缀SIG并没有影响

[xf@xuexi ~]$ kill -l SIGKILL

9

[xf@xuexi ~]$ kill -l KILL

9

[xf@xuexi ~]$ kill -l SIGTERM

15

[xf@xuexi ~]$ kill -l TERM

15

注意:init是Linux系统操作中不可缺少的程序之一。所谓的init进程,它是一个由内核启动的用户级进程。内核自行启动(已经被载入内存,开始运行,并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。所以,init始终是第一个进程(其进程编号始终为1)。 其它所有进程都是init进程的子孙。init进程是不可杀的!

(3).其他

Linux进程的管理:

进程是Linux系统中一个非常重要的概念。Linux是一个多任务的操作系统,系统上经常同时运行多个进程。我们不关心这些进程是如何分配的,或者是内核如何管理分配时间片的,所关系的只是如何去控制这些进程,让它们更好的为用户服务。

Linux操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。

1)交互进程是由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台运行

2)批处理进程和终端没有联系,是一个进程序列。

3)监控进程(也称系统守护进程)是Linux系统启动时启动的进程,并且在后台运行。例如,httpd是著名的Apache服务器的监控进程。

Kill命令工作原理:

向Linux内核发送一个系统操作信号和摸个程序的进程标识号,然后系统内核就可以对进程标识号指定的进程进行操作。比如在top命令中,我们可以看到系统运行许多进程,有时就需要使用kill中止默写进程来提高系统资源。在讲解安装和登录命令时,曾提到系统多个虚拟控制台的作用是当一个程序出错造成系统锁死时,可以切换到其他虚拟控制台关闭这个程序。此时使用的命令就是kill,因为kill是大多数Shell内部命令可以直接调用的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
完整虚拟存储管理器实验报告!一、实验目的请求页式虚存管理是常用的虚拟存储管理方案之一。通过请求页式虚存管理中对页面置换算法的模拟,有助于理解虚拟存储技术的特点,并加深对请求页式虚存管理的页面调度算法的理解。二、实验环境 Turbo C 2.0/3.0或VC++6.0三、实验内容本实验要求使用C语言编程模拟一个拥有若干个虚页的进程在给定的若干个实页中运行、并在缺页中断发生时分别使用FIFO和LRU算法进行页面置换的情形。其中虚页的个数可以事先给定(例如10个),对这些虚页访问的页地址流(其长度可以事先给定,例如20次虚页访问)可以由程序随机产生,也可以事先保存在文件中。要求程序运行时屏幕能显示出置换过程中的状态信息并输出访问结束时的页面命中率。程序应允许通过为该进程分配不同的实页数,来比较两种置换算法的稳定性。四、实验说明 1.设计中虚页和实页的表示本设计利用C语言的结构体来描述虚页和实页的结构。pnpfntimepnpfnnext 虚页结构 实页结构在虚页结构中,pn代表虚页号,因为共10个虚页,所以pn的取值范围是0—9。pfn代表实页号,当一虚页未装入实页时,此项值为-1;当该虚页已装入某一实页时,此项值为所装入的实页的实页号pfn。time项在FIFO算法中不使用,在LRU中用来存放对该虚页的最近访问时间。在实页结构中,pn代表虚页号,表示pn所代表的虚页目前正放在此实页中。pfn代表实页号,取值范围(0—n-1)由动态指派的实页数n所决定。next是一个指向实页结构体的指针,用于多个实页以链表形式组织起来,关于实页链表的组织详见下面第4点。2.关于缺页次数的统计为计算命中率,需要统计在20次的虚页访问中命中的次数。为此,程序应设置一个计数器count,来统计虚页命中发生的次数。每当所访问的虚页的pfn项值不为-1,表示此虚页已被装入某实页内,此虚页被命中,count加1。最终命中率=count/20*100%。3.LRU算法中“最近最久未用”页面的确定为了能找到“最近最久未用”的虚页面,程序中可引入一个时间计数器countime,每当要访问一个虚页面时,countime的值加1,然后将所要访问的虚页的time项值设置为增值后的当前countime值,表示该虚页的最后一次被访问时间。当LRU算法需要置换时,从所有已分配实页的虚页中找出time值为最小的虚页就是“最近最久未用”的虚页面,应该将它置换出去。4.算法中实页的组织因为能分配的实页数n是在程序运行时由用户动态指派的,所以应使用链表组织动态产生的多个实页。为了调度算法实现的方便,可以考虑引入free和busy两个链表:free链表用于组织未分配出去的实页,首指针为free_head,初始时n个实页都处于free链表中;busy链表用于组织已分配出去的实页,首指针为busy_head,尾指针为busy_tail,初始值都为null。当所要访问的一个虚页不在实页中时,将产生缺页中断。此时若free链表不为空,就取下链表首指针所指的实页,并分配给该虚页。若free链表为空,则说明n个实页已全部分配出去,此时应进行页面置换:对于FIFO算法要将busy_head 所指的实页从busy链表中取下,分配给该虚页,然后再将该实页插入到busy链表尾部;对于LRU算法则要从所有已分配实页的虚页中找出time值为最小的虚页,将该虚页从装载它的那个实页中置换出去,并在该实页中装入当前正要访问的虚页。~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值