前言
在日常运行和维护工作中,我们经常看到一些奇怪的系统过程占用了相对较高的资源,但我们不敢随意使用Killllll。
这些系统级别的核心过程将包括括号,它们将执行一些系统的辅助功能(例如将缓存写入磁盘);
用户执行无括号(如java)、nginx等。)
如下图所示:

kswapd0
系统定期唤醒kswapd,检查内存是否紧张,如果不紧张,则睡眠,kswapd中有两个阀值:pages_hige,pages_low,当空闲内存页数少于pages_low时,kswapd过程将扫描内存,每次释放32个fres。 pages,直到free page的数量达到pages_high标准
kjournald
kjournald有三种模式,即journal,ordered,writeback
journal:最慢的模式是记录所有文件系统中元数据的变化
ordered:默认情况下,只记录文件系统更改的元数据,并在更改前记录日志
writeback :最快的模式是只记录修改后的元数据,并依靠标准文件系统的编写过程将数据写入硬盘
pdflush
内容和文件系统主要用于同步内存。
例如,当文件在内存中修改时,pdflush负责将其写回硬盘。每个内存中的垃圾页面(dirty page)当超过10%时,pdflush将这些页面备份回硬盘。
通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过/通过.conf中的 vm.dirty_background_ratio项默认值10
kthreadd
内核线程是在内核初始化过程中创建的,其作用是管理和调度其他内核线程。
它将循环运行一个叫做kthread的函数,其功能是运行kthread_create_kthread维护在list全局链表中,然后可以调用kthread_create创建kthread,添加到kthread_create_list链表,kthreadweakcreate会议 up kthreadd_task
注:此线程无法关闭!!
migration
migration/0-migration/31有32个核心网站,每个处理器对应一个migration核心线程,主要用于相应CPU核心的迁移过程。核心函数是migration_thread();该过程在系统启动时自动加载(每个过程) cpu 一个),把自己设定为一个, SCHED_FIFO 实时进行,然后检查 runqueue::migration_queue 如果没有,是否需要等待处理? TASK_INTERRUPTIBLE 中度休眠,直到被唤醒后再次检查。
migration_thread() 仅仅是一个 CPU 绑定以及 CPU 电源管理等功能接口。这个线程是调度系统的重要组成部分。
watchdog
watchdog/0-watchdog/31共有32个内核线程, 每个处理器的核心对应一个watchdogo 主要用于监控系统的运行,并在系统出现故障时自动重新启动系统,包括内核 watchdog module 还有用户空间 watchdog 程序的基本工作原理是:watchdog启动后(即////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////dev,(1分钟)///////////watchdog设备在一定时间间隔打开后)dev/watchdog没有执行写作操作, 硬件watchdog电路或软件定时器将重新启动系统,每次写作都会导致定时器的重新设置。
events
events/0-events/31, 共有32个内核线程,每个处理器对应一个内核线程 events内核线程。许多软硬件事件(如断电、文件变更)主要用于处理内核事件,转换为events,并分发给对相应事件感兴趣的线程。
kblockd
kblockd/0-kblockd/31, 内核线程共32个 ,每个处理器对应一个处理器核心 kblockd 管理系统块设备的核心线程定期激活
aio
aio/0-aio/31, , 总共有32个内核线程,每个处理器对应一个 aio 内核线程, I////////////替代用户流程管理O,AIO(异步I/)用于支持用户状态O)
注:此线程不应关闭。
rpciod
rpciod/0-rpciod/31, 共有32个内核线程, 每个处理器对应RPciod内核线程,主要用于远程调用服务(如NFS)的保护过程,从客户端启动I/O服务











暂无评论内容