全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货  >  云计算技术干货  >  详情

linux内核编译后的大小,linux内核编译配置文件

来源:千锋教育
发布人:xqq
2023-11-22

推荐

在线提问>>

linux内核一般占用多大内存

我们在上面用命令查到的是物理内存的使用情况,实际在写代码的时候我们面对的是虚拟内存,在32为操作系统上,每个进程有4GB的内存空间,不过真正使用的是3G用户空间,有1G是内核空间,是和所有程序共享。

安卓手机的内核一般保存在ROM的单独分区里(这个分区没有常规文件系统),大小约为数兆(这个分区往往稍大,达到十几兆)。刷机时,一般刷的是一套文件系统(另一个分区),几乎不会去刷内核(这是厂商移植好的)。

Linux虚拟内存的大小为2^32(在32位的x86机器上),内核将这4G字节的空间分为两部分。最高的1G字节(从虚地址 0xC0000000到0xFFFFFFFF)供内核使用,称为“内核空间”。

VMware这样的虚拟安装的默认都会选择1G左右; 如果安装字符界面最小化安装512-1G够了,但是现在的内存都比较普及一般的电脑都是4G以上内存,所以呢添加新的虚拟机的时候一般设置个1-2G,一般的操作测试是够用了。

一般6-10G,建议20G以上。由于Linux的内核的来源是一样的, 但由于发行版本不同, 具体需要磁盘大小看具体系统需求。Linux内核比较小, 安装系统其实用不了多大的磁盘空间, 不像MAX OS 和windows 。

官方内核的不同,这个区别很好说,官方的开发是基于 git 版本控制的,去看两个 git 版本就知道了。一般是硬件支持,还有新的功能算法,还有驱动增减,错误修补什么的。

为什么自己编译的linux内核和驱动比系统自带的要大的多??

驱动编程,主要是为了把linux一直到嵌入式设备,linux内核是一个庞大的系统,但不是所有设备都用上这些,而且对于兼容性问题,还要做一些修改。

根据版本的不同,内核大小也不同;我看了下最近发布的6版本下载80M左右,估计解压之后100多兆吧。

你可以简单的理解为驱动程序实现了操作系统对硬件的有效管理,应用程序实现了操作系统方便用户操作的目的。

Linux内核大小取决于什么?

1、执行ulimit -c的结果即为core文件的大小限制,通常为0,即仅受限于内存,若为其他值,则为core文件最大大小。通过ulimit -c NUM可设置该大小。参考man bash的ulimit小结。

2、兼容性问题。X86处理器支持的页面大小只有4K,所以如果页面过大的话,会导致兼容性问题。如果页面太大,在将内存页换出到swap分区时,需要换出的内存也就越大,会影响性能。

3、根据版本的不同,内核大小也不同;我看了下最近发布的6版本下载80M左右,估计解压之后100多兆吧。

4、发行版自带内核往往经过长期、仔细的配置,会比个人十几分钟的配置更全面。这两个原因对内核及模块的大小有影响,但不大。

5、官方内核的不同,这个区别很好说,官方的开发是基于 git 版本控制的,去看两个 git 版本就知道了。一般是硬件支持,还有新的功能算法,还有驱动增减,错误修补什么的。

6、突。比如,一个进程从其用户空间的地址0x1234ABCD处可以读出整数8,而另外一个进程从其用户空间的地址0x1234ABCD处可以读出整数 20,这取决于进程自身的逻辑。

linux内核修改重新编译后,容量消耗了5G

还有一个可能是磁盘盘符大变了,你以前调整过的吗?f盘成c盘了。

shared memory ,这和内存大小无关,无法创建shared memory可能的原因有很多,最常见的有 权限不够 参数错误 还有其他很多原因 所以需要看源代码或者调试,最好在报错的地方把 shmget 或 shm_open 的具体errno 打印出来。

)你编译的分区空间不足了,你换一个容量大的分区进行编译即可。

如果您无法更改readaheadkb的大小,可能是由于以下原因: 您没有足够的权限更改配置文件。在Linux中,一些配置文件只能被root用户或具有sudo权限的用户修改。 systemd-readahead-collect服务未运行。

相关文章

kalilinux删除,kalilinux常用命令

jvm监控工具linux,jdk自带jvm监控linux

linux内核编译后的大小,linux内核编译配置文件

linux文件系统查看,linux 文件查看

识别网络ip攻击linux,手动设置ip地址不能识别网络

开班信息 更多>>

课程名称
全部学科
咨询

HTML5大前端

Java分布式开发

Python数据分析

Linux运维+云计算

全栈软件测试

大数据+数据智能

智能物联网+嵌入式

网络安全

全链路UI/UE设计

Unity游戏开发

新媒体短视频直播电商

影视剪辑包装

游戏原画

    在线咨询 免费试学 教程领取