Linux进程管理作业控制及虚拟文件系统

简介: 作业控制是一个命令行功能,也叫后台运行。

一、作业控制


1、简介


1)概述


       作业控制是一个命令行功能,也叫后台运行。


2)关键词介绍


goreground(fg):前台进程:是在终端中运行的命令,占领终端。

background(bg):后台进程:没有控制终端,他不需要终端的交互,看不到,但是在运行。


2、后台程序控制


1)观察占领前端的现象


命令:sleep   等待时间


[root@localhost ~]# sleep 2000        //sleep程序前台运行
^C                                    //按Ctrl+c终止进程
[root@localhost ~]#


运行一个程序,当前 终端无法输入。观察占领前台的现象。
大部分命令行输入已经无效。

Ctrl+C可终止当前进程。


2)将程序在后台运行


命令:sleep  等待时间  &                //不管什么命令末尾加上&代表着该程序在后台运行,不占用前台。

[root@localhost ~]# vim  /test/file1 &            //vim进程在后台运行
[2] 3045
[root@localhost ~]# sleep 3000 &                 //sleep  3000在后台运行
[3] 3061
[2]+  已停止               vim /test/file1
[root@localhost ~]# sleep 4000 &                    //sleep  4000在后台运行
[4] 3076


3)查看进程(所有进程以及后台进程)


命令:ps aux | grep sleep        //查询所有sleep进程
          jobs                               //查询后台进程

[root@localhost ~]# ps aux|grep sleep                //查询所有sleep进程信息
root       3061  0.0  0.0 108052   356 pts/0    S    08:59   0:00 sleep 3000
root       3076  0.0  0.0 108052   356 pts/0    S    08:59   0:00 sleep 4000
root       3377  0.0  0.0 108052   356 ?        S    09:24   0:00 sleep 60
root       3393  0.0  0.0 112824   980 pts/0    R+   09:25   0:00 grep --color=auto sleep
[root@localhost ~]# jobs                            //查询所有后台进程信息
[2]+  已停止               vim /test/file1
[3]   运行中               sleep 3000 &
[4]-  运行中               sleep 4000 &


ps aux输出的信息代表的含义可参考http://t.csdn.cn/OaXXO内容


后台进程信息的方括号内的数字代表着,后台进程的序号,在对后台进程进行操作的时候用这些序号


4)将后台进程调到前台


命令:fg  后台进程序号                        //将指定的后台进程调至前台

[root@localhost ~]# jobs
[2]+  已停止               vim /test/file1
[3]   运行中               sleep 3000 &
[4]-  运行中               sleep 4000 &
[root@localhost ~]# fg 3                //将三号后台进程调到前台
sleep 3000                              //sleep 3000到了前台运行
这个时候所有命令输入都失效,按Ctrl+Z可将该进程移到后台
^Z                                        //Ctrl+Z
[3]+  已停止               sleep 3000    //此时sleep到了后台运行切已停止,用bg命令:bg 后台进程序号,将该进程变为运行状态
[root@localhost ~]# bg 3
[3]+ sleep 3000 &
[root@localhost ~]# jobs
[2]+  已停止               vim /test/file1
[3]   运行中               sleep 3000 &
[4]-  运行中               sleep 4000 &


5)消灭后台进程


命令:kill   %后台进程序号


注意:注意,“kill  1” 和 “kill  %1”不同

前者终止PID为1的进程

后者是杀死作业序号为1的后台程序

[root@localhost ~]# jobs                        //查看所有后台进程信息
[2]+  已停止               vim /test/file1
[3]   运行中               sleep 3000 &
[4]-  运行中               sleep 4000 &
[root@localhost ~]# kill %3                //杀死3号后台进程
[3]+  已终止               sleep 3000
[root@localhost ~]# jobs                    //3号后台进程被终止
[2]+  已停止               vim /test/file1
[4]-  运行中               sleep 4000 &


6)总结


&                                 //后台运行程序

jobs                              //查询后台

kill  %后台进程号         //停止后台进程


二、虚拟文件系统proc


1、简介


虚拟文件系统:采集服务器自身 内核、进程运行的状态信息


1)CPU


位置:/proc/cpuinfo

查看CPU信息:命令:cat   /proc/cpuinfo


[root@localhost ~]# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family  : 6
model   : 158
model name  : Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz    //CPU的版本信息
stepping  : 10
microcode : 0xb4
cpu MHz   : 2400.006
cache size  : 8192 KB
physical id : 0
siblings  : 1
core id   : 0
cpu cores : 1
apicid    : 0
initial apicid  : 0
fpu   : yes
fpu_exception : yes
cpuid level : 22
wp    : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt xsaveopt xsavec arat md_clear spec_ctrl intel_stibp flush_l1d arch_capabilities
bogomips  : 4800.01
clflush size  : 64
cache_alignment : 64
address sizes : 43 bits physical, 48 bits virtual
power management:


2)内存


位置:/proc/meminfo

查看内存信息:命令:cat   /proc/meminfo


[root@localhost ~]# cat /proc/meminfo
MemTotal:         995676 kB
MemFree:           78340 kB
MemAvailable:     106484 kB
Buffers:              40 kB
Cached:           141940 kB
SwapCached:         7056 kB
Active:           281584 kB
Inactive:         311344 kB
Active(anon):     218332 kB
Inactive(anon):   246860 kB
Active(file):      63252 kB
Inactive(file):    64484 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:       2097148 kB
SwapFree:        2054140 kB
Dirty:                20 kB
Writeback:             0 kB
AnonPages:        445268 kB
Mapped:            66112 kB
Shmem:             14244 kB
Slab:             120452 kB
SReclaimable:      56216 kB
SUnreclaim:        64236 kB
KernelStack:        9616 kB
PageTables:        35212 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     2594984 kB
Committed_AS:    3990648 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      213604 kB
VmallocChunk:   34359277564 kB
Percpu:            55808 kB
HardwareCorrupted:     0 kB
AnonHugePages:     36864 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      100224 kB
DirectMap2M:      948224 kB
DirectMap1G:           0 kB


3)内核


位置:/proc/cmdline

查看内核信息:命令:cat   /proc/cmdline


[root@localhost ~]# cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-3.10.0-1160.el7.x86_64 root=/dev/mapper/centos-root 
ro crashkernel=auto spectre_v2=retpoline rd.lvm.lv=centos/root 
rd.lvm.lv=centos/swap rhgb quiet LANG=zh_CN.UTF-8









相关文章
|
13天前
|
缓存 监控 Linux
linux进程管理万字详解!!!
本文档介绍了Linux系统中进程管理、系统负载监控、内存监控和磁盘监控的基本概念和常用命令。主要内容包括: 1. **进程管理**: - **进程介绍**:程序与进程的关系、进程的生命周期、查看进程号和父进程号的方法。 - **进程监控命令**:`ps`、`pstree`、`pidof`、`top`、`htop`、`lsof`等命令的使用方法和案例。 - **进程管理命令**:控制信号、`kill`、`pkill`、`killall`、前台和后台运行、`screen`、`nohup`等命令的使用方法和案例。
43 4
linux进程管理万字详解!!!
|
4天前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
40 8
|
6天前
|
Linux 开发工具 Perl
在Linux中,有一个文件,如何删除包含“www“字样的字符?
在Linux中,如果你想删除一个文件中包含特定字样(如“www”)的所有字符或行,你可以使用多种文本处理工具来实现。以下是一些常见的方法:
30 5
|
6天前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
23 6
|
6天前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
30 6
|
7天前
|
监控 Linux Perl
Linux 命令小技巧:显示文件指定行的内容
在 Linux 系统中,处理文本文件是一项常见任务。本文介绍了如何使用 head、tail、sed 和 awk 等命令快速显示文件中的指定行内容,帮助你高效处理文本文件。通过实际应用场景和案例分析,展示了这些命令在代码审查、日志分析和文本处理中的具体用途。同时,还提供了注意事项和技巧,帮助你更好地掌握这些命令。
21 4
|
12天前
|
算法 Linux 定位技术
Linux内核中的进程调度算法解析####
【10月更文挑战第29天】 本文深入剖析了Linux操作系统的心脏——内核中至关重要的组成部分之一,即进程调度机制。不同于传统的摘要概述,我们将通过一段引人入胜的故事线来揭开进程调度算法的神秘面纱,展现其背后的精妙设计与复杂逻辑,让读者仿佛跟随一位虚拟的“进程侦探”,一步步探索Linux如何高效、公平地管理众多进程,确保系统资源的最优分配与利用。 ####
46 4
|
13天前
|
网络协议 Linux
linux系统重要文件目录
本文介绍了Linux系统中的重要目录及其历史背景,包括根目录、/usr、/etc、/var/log和/proc等目录的结构和功能。其中,/etc目录下包含了许多关键配置文件,如网卡配置、DNS解析、主机名设置等。文章还详细解释了各目录和文件的作用,帮助读者更好地理解和管理Linux系统。
35 2
|
12天前
|
缓存 监控 Linux
|
13天前
|
缓存 负载均衡 算法
Linux内核中的进程调度算法解析####
本文深入探讨了Linux操作系统核心组件之一——进程调度器,着重分析了其采用的CFS(完全公平调度器)算法。不同于传统摘要对研究背景、方法、结果和结论的概述,本文摘要将直接揭示CFS算法的核心优势及其在现代多核处理器环境下如何实现高效、公平的资源分配,同时简要提及该算法如何优化系统响应时间和吞吐量,为读者快速构建对Linux进程调度机制的认知框架。 ####