北京理工大学操作系统 实验一 编译Linux内核-程序员宅基地

技术标签: 经验分享  运维  北京理工大学操作系统实验  linux  服务器  课程设计  


Copyright 2024 Squareroot_2, All rights reserved.

实验一 编译Linux内核

一、实验目的

1.学习怎样重新编译Linux内核。
2.理解、掌握Linux标准内核和发行版本内核的区别。

二、实验内容

安装虚拟机并配置环境,准备Linux的内核文件,编译并安装Linux的内核,配置GRUB,重启并查引导文件,看内核安装情况。

三、实验步骤

1.安装虚拟机并配置环境

实验环境:

虚拟机软件:VMware Workstation 16Pro
Linux发行版:ubuntu-22.04.3
虚拟机配置:4核CPU,8GB内存,硬盘80GB。

创造虚拟机后,安装ubuntu-22.04.3操作系统,操作系统安装图略。
输入以下命令安装依赖:

sudo apt-get install  libncurses5-dev openssl libssl-dev
sudo apt-get install build-essential openssl
sudo apt-get install pkg-config
sudo apt-get install libc6-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install libelf-dev
sudo apt-get install minizip
sudo apt-get install libidn11-dev

依赖安装图略
运行命令 uname -a,得到内核版本为6.2.0-33-generic
内核版本为6.2.0-33-generic

2.下载并解压Linux内核源码

下载linux-6.5.5.tar.xz并使用指令: sudo tar -xvf linux-6.5.5.tar.xz -C /usr/src/ 解压
在这里插入图片描述

3.配置内核编译选项

运行 make oldconfig 命令,使用原有内核配置
在这里插入图片描述

此处还需修改.config文件,否则报错 在这里插入图片描述

修改前:
在这里插入图片描述

修改后:

4.编译并安装内核和模块

运行 sudo make -j8 编译相应的内核模块,其中 -j8 表示使用8个并行任务执行构建操作,该步操作需要较长时间
在这里插入图片描述
运行 sudo make -j8 modules 命令,编译模块
在这里插入图片描述

运行命令sudo make modules_installsudo make install安装编译好的内核模块。 在这里插入图片描述
在这里插入图片描述

5.修改GRUB配置

运行命令sudo update-grub2,自动修改GRUB配置引导文件,最后运行reboot命令重启系统。
在这里插入图片描述

四、实验结果及分析

重启虚拟机后,在桌面打开终端输入uname -a 查看当前系统内核版本为刚才编译的6.5.5,证明已经成功编译并安装了Linux内核。
在这里插入图片描述

五、实验收获与体会

编译Linux内核是学习操作系统这门课程一个非常重要的步骤,在本次实验中,我通过终端操作命令,在Linux操作系统里成功实现了内核编译。通过本次实验,我学习了怎样重新编译Linux内核,理解并掌握了Linux标准内核和发行版本内核的区别,对操作系统的基础知识有了更深刻的理解。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Squareroot_2/article/details/137047572

智能推荐

mac 无法连接android手机进行调试 解决方案_安卓手机连接mac电脑 微信开发者工具 监测不到 安卓设备-程序员宅基地

文章浏览阅读930次。学习android开发几天了,今天好不容易找了个android手机,直接连接mac电脑,结果eclipse-DDMS里面没有显示任何设备。使用命令行adb devices 试了下,没设备列表。郁闷ing哎,豌豆荚也没有mac版本的,找了个类似的工具,也没有发现我的设备。随即google了一番,发现靠谱的解决方法如下:第一步: 查看usb设备信息在 终_安卓手机连接mac电脑 微信开发者工具 监测不到 安卓设备

做好项目复盘只需掌握这四步-程序员宅基地

文章浏览阅读1.3k次。2019独角兽企业重金招聘Python工程师标准>>> ..._工程项目复盘一般有哪几部分

python利用pandas合并excel表格代码_利用Python pandas对Excel进行合并的方法示例-程序员宅基地

文章浏览阅读204次。前言在网上找了很多Python处理Excel的方法和代码,都不是很尽人意,所以自己综合网上各位大佬的方法,自己进行了优化,具体的代码如下。博主也是新手一枚,代码肯定有很多需要优化的地方,欢迎各位大佬提出建议~代码我自己已经用了一段时间,可以直接拿去用主要功能按行合并 ,即保留固定的表头(如前几行),实现多个Excel相同格式相同名字的表单按纵轴合并;按列合并。 即保留固定的首列,实现多个Excel..._df_merged.to_excel(writer, sheet_name='app function', index=false, engine='o

JavaScript警告框:创建自定义提示框的实现方法_js自定义提示框-程序员宅基地

文章浏览阅读289次。通过以上的HTML、CSS和JavaScript代码,我们可以创建一个自定义的警告框,并可以根据需要进行样式和行为的定制。警告框的显示和隐藏可以通过JavaScript函数来控制,使得开发者能够根据具体的应用场景进行灵活的操作。要定制警告框的外观和行为,我们可以使用HTML、CSS和JavaScript的组合。JavaScript中的警告框是一种常见的弹出框,它用于向用户显示重要的消息或警告。当上述代码执行时,将在页面上显示一个警告框,并显示消息"这是一个警告框的示例!函数,以便显示警告框。_js自定义提示框

android中ListView异步加载图片时的图片错位问题解决方案,Alibaba高并发业务实战文档-程序员宅基地

文章浏览阅读520次,点赞30次,收藏15次。ListView/>加入访问网络和读取,写入sdcard的权限。接下来,我们来看看MainActivity.java。性能考虑,我们使用convertView和ViewHolder来重用控件。这里涉及到比较关键的一步,我们会在getView的时候给ViewHolder中的ImageView设置tag,其值为要放置在该ImageView上的图片的url地址。

随便推点

WPF设置自定义控件依赖属性无效解决方案_wpf依赖属性 不生效-程序员宅基地

文章浏览阅读2.7k次。[前言]由于刚接触WPF不久,经验不足,走了很多弯路,比如本次遇到的设置自定义控件依赖属性无效问题,该依赖属性没有在自定义控件前台直接使用,只是作为一个标识通过后端代码来控制前端部分控件,依赖属性定义看起来没啥问题,属性类型为bool类型,使用的时候设置true有效false无效,段点调试false也不进入回调方法.依赖属性代码: /// <summary> /// 连接状态(成功/失败) /// </summary> pu_wpf依赖属性 不生效

论文学习——HiFi-GAN: Generative Adversarial Networks for Efficient and High Fidelity Speech Synthesis_hifigan-程序员宅基地

文章浏览阅读1.2k次,点赞3次,收藏10次。* 这篇文章,是《CONDITIONAL SOUND GENERATION USING NEURAL DISCRETE TIME-FREQUENCY REPRESENTATION LEARNING》主要应用到的三个技术之一,我正在复现这篇文章,然后需要了解HiFi-GAN技术,续哦一就翻译了这篇文章。* 这篇文章是2020年的,近三年的文章,是Conference on Neural Information Processing Systems (NeurIPS 2020),这个会议也是人工智能领域的顶会_hifigan

深入理解并发、线程与等待通知机-程序员宅基地

文章浏览阅读52次。为什么用户线程又被称为协程呢?我们知道,内核线程的切换开销是来自于保护和恢复现场的成本, 那如果改为采用用户线程, 这部分开销就能够省略掉吗?答案还是“不能”。但是,一旦把保护、恢复现场及调度的工作从操作系统交到程序员手上,则可以通过很多手段来缩减这些开销。

Redis知识点笔记总结_项目经理应该知道的redis的知识点-程序员宅基地

文章浏览阅读2.4k次,点赞9次,收藏8次。本文参考:Redis详细总结笔记_poizxc2014的博客-程序员宅基地Redis学习资料推荐:Redis笔记(基础+进阶)_爪洼ing的博客-程序员宅基地Redis全面实战教程_challenge-linge的博客-程序员宅基地Redis知识点总结_烧煤的快感的博客-程序员宅基地_redis的知识点Redis面试题总结参考:Redis面试题(2020最新版)_ThinkWon的博客_redis面试题前言:Redis简单介绍1、什么是redisRedis是一个基于_项目经理应该知道的redis的知识点

(Python)Pycharm安装及Python环境配置_pycharm win7-程序员宅基地

文章浏览阅读5k次。以Win7系统为例,详细展示Pycharm安装及Python环境配置。_pycharm win7

推荐文章

热门文章

相关标签