Linux课程总结报告

一.结合虚拟化技术分析Linux系统的一般执行过程

虚拟化技术分析Linux系统:

启动虚拟化管理程序,在物理计算机上,首先启动虚拟化管理程序(如Xen、KVM等),该程序负责创建和管理虚拟机。

创建虚拟机,虚拟化管理程序创建一个或多个虚拟机实例,每个虚拟机都是一个独立的操作系统环境。虚拟机实例通常由一组配置文件和虚拟磁盘镜像组成。

启动虚拟机,虚拟化管理程序启动虚拟机实例,为其分配计算资源(如CPU、内存等)。虚拟机在启动时加载虚拟磁盘镜像,并开始执行其中的操作系统。

Linux引导过程:虚拟机内的操作系统开始引导过程。首先,系统固件(如BIOS或UEFI)加载引导加载程序(bootloader),通常是GRUB(GRand Unified Bootloader)。引导加载程序负责加载Linux内核。

内核启动:引导加载程序加载Linux内核镜像,并将控制权转交给内核。内核负责初始化硬件设备、创建进程、加载驱动程序等操作。

用户空间初始化:内核完成初始化后,它启动第一个用户空间进程(通常是init进程或systemd),该进程是用户空间的起点。用户空间进程负责进一步初始化系统环境、启动系统服务、加载用户应用程序等。

运行用户应用程序:一旦用户空间初始化完成,Linux系统就进入了可交互状态。用户可以通过终端或图形界面与系统进行交互,并运行各种用户应用程序。

在虚拟化技术下,每个虚拟机都运行着独立的Linux系统,与其他虚拟机相互隔离。虚拟化管理程序负责协调和分配物理资源,以及提供虚拟机的创建、启动和管理功能。每个虚拟机内部的Linux系统执行过程与物理计算机上的Linux系统相似,但在虚拟化环境中运行,并受到虚拟化管理程序的管理和限制。

虚拟化技术在物理层和虚拟机之间增加了一层抽象层,虽然这会导致一定的性能开销,但是为了虚拟化技术提供了更高的灵活性和可管理性。

二.课程收获

在本次课程中,通过老师的讲课和不断的实验,比之前更加了解了Linux内核,从一开始第一次实验的代码分析,到基于VS Code的Linux内核调试环境搭建及start_kernel跟踪分析,再到以time/gettimeofday系统调用为例分析ARM64 Linux 5.4.34,到深入理解进程切换,我一点点地深入了解了Linux系统,不仅能够提升对操作系统的深入理解,还能够提升系统调试与优化能力,同时,通过学习Linux内核分析,我了解内核的各种配置选项和模块,以及如何根据特定需求进行内核的定制和优化。这对于我从事系统开发和嵌入式开发非常有帮助。

同时,上课内容也知识含量满满,从一开始最简单的Linux系统概述到有难度的Linux源码阅读、编译调试和启动过程,在这个过程中,我锻炼了自己的能力,对Linux进程和可执行程序的原理有了更深刻的认识,同时也对KVM以及虚拟机技术有了更好的认知。

Linux操作系统作为计算机的基础,具有广泛的应用领域,包括服务器、嵌入式设备、移动设备和云计算等。学习Linux不仅让我熟悉和了解这个强大的操作系统,从而在各个领域中获得更多的机会和竞争优势,而且适应职业发展的需求,还可以通过阅读源码提升自己编写系统项目的规范和技巧,收益颇多。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值