linux内核各组件的功能介绍

news/2024/7/20 12:57:05 标签: 内存管理, 操作系统, 网络

各组件的主要功能介绍如下:

1.进程管理

负责创建,结束进程,管理内核的活动,如软件中断、tasklet等,管理进程通信,如消息(message)、管道(pipe)等,实现进程调度(schedule)。进程调度是进程管理的重要任务,它处理所有活动的、等待被执行的和被阻塞(blocking)的进程调度,使所有应用和进程合理的共享处理器的运行时间。

2.内存管理

内存是系统最主要的资源之一,计算机的性能在很大程度上与其所配备的内存有关。linux内核内存管理的主要功能就是给进程分配地址空间,该地址指允许本进程自己访问。

3.文件系统

在linux操作系统中,文件系统是整个系统的中枢。linux与其他操作系统不同,几乎所有的操作都基于文件系统接口的处理,如设备驱动程序可以按文件方式访问设备,通过/proc文件系统可以访问linux内核的数据和参数,这两个功能在调试时非常有效。

4.设备驱动程序

在所有的操作系统中,设备驱动程序都是硬件的抽象,同故宫它可以访问硬件。linux可以用模块的方式实现设备驱动成,提供了在系统运行时动态加载和卸载设备驱动程序的途径。

5.网络子系统

在linux中所有的网络操作是由操作系统管理的。这事因为网络操作不能分配给某个进程完成。在处理受到的网络数据包时,数据包得接受是异步的。接受数据包任务必须是在进程处理这些数据包前先收集齐所有的网络包、标识数据,然后向上层传递,这就是为什么由内核的网络子系统负责处理数据包,而不是由某个进程和网络接口来处理。

在内核中还定义了大量的接口,目的是为了更方便的拓展内核功能,如虚拟文件系统接口(Virtual filesystem Interface),课用于增加新的文件系统,现在linux中能支持十多种不同的文件系统;课件linux的开发人员定义这种接口所带来的优势。在linux的网络体系结构中也定义了很多接口,用以支持动态增加网络协议和网络设备驱动程序。

 


http://www.niftyadmin.cn/n/1199804.html

相关文章

受益书籍books

《大型网站系统与JAVA中间件实践》

MySql问题总结

1.导入sql脚本过大会报错 需要修改max_allowed_packet 修改方法 一、 方法1可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。max_allowed_packet 20M如果找不到my.cnf可以通过mysql --help | grep my.cnf去寻找m…

预订了一本《AKKA IN ACTION》

2019独角兽企业重金招聘Python工程师标准>>> 今天花了大约45美刀在manning.com预订了一本《AKKA IN ACTION》。老外真的会想点子,一本书才写了两章60几页就拿出来预售,牛。不过,AKKA是我很感兴趣,很想深入了解的一套架…

IDEA 设置总结

1.git提交显示别人名字 找到c盘中git目录的.gitconfig文件修改成自己的name和邮箱就好了。 2.idea 如何关闭参数提示。 参照:https://blog.csdn.net/qq_27093465/article/details/54970000 3.idea 打开终端(控制台cmd) 快捷键: altF12

技术型公司的面试题

1、redis是分布式的吗? http://blog.csdn.net/pi9nc/article/details/17719737 2、JVM分代机制中什么样的对象会进入年老代? 3、分布式系统中的事务处理? http://down.51cto.com/data/831280 http://wenku.baidu.com/view/be946bec0975f46527…

CshBBrain架构介绍

2019独角兽企业重金招聘Python工程师标准>>> 在介绍CshBBrain服务器架构前,我们先分析下业界流行NIO框架的架构,目前业界流行的NIO框架有Mina,Netty,Grizzly等。他们都采用了Reactor模式,下面上张Reactor模式的示意图:…

现代的人才

有第三方支付接入经验,了解第三方支付接口相关技术; 广告: 设计与实现CPC/CPS、无线CPC/CPS等相关系统; 通过数据挖掘,机器学习等手段提高联盟反能力; 进行广告的相关性优化、算法与机制改进及策略研发&…

mysqlreport

1、MySQLReport 简介MySQLReport 是一个用perl语言编写的MySQL数据库监控脚本,是一个自由软件,它把MySQL数据库的运行状态值(showstatus)以更友好的方式显示出来,通过它可以更方便的查看MySQL数据库的运行状况。目前该…