结合虚拟化技术分析Linux系统的一般执行过程
虚拟化层启动:在虚拟化环境中,物理主机上的虚拟化软件(如VMware、KVM等)启动,并创建虚拟机管理器(VMM)或称为hypervisor。VMM负责管理虚拟机的创建、销毁和资源分配。
虚拟机创建:VMM根据用户的需求创建虚拟机实例。虚拟机实例是一种逻辑上的隔离环境,包含独立的操作系统(如Linux)和应用程序。
虚拟机启动:在启动虚拟机时,VMM分配必要的计算资源(例如处理器、内存、存储等)给虚拟机。虚拟机启动后,它拥有自己的虚拟硬件和操作系统实例。
Linux内核引导:虚拟机启动时,它的虚拟硬件加载了一个引导加载程序(bootloader),例如GRUB。引导加载程序负责引导Linux内核的启动。
Linux内核初始化:引导加载程序将控制权交给Linux内核。Linux内核初始化过程中,它首先完成硬件的检测和初始化,然后设置必要的数据结构和数据缓冲区。
用户空间初始化:Linux内核初始化后,它启动了用户空间的初始化。用户空间是操作系统中运行用户应用程序的环境。
init进程启动:Linux内核的初始化过程中,init进程是第一个用户空间进程的父进程。它负责启动其他系统进程,并提供系统初始化和维护的功能。
系统服务启动:init进程启动后,它会读取配置文件(如/etc/inittab)来确定要启动的系统服务。这些服务可以是后台守护进程,负责提供各种系统功能(如网络服务、日志记录等)。
Shell环境启动:在系统服务启动之后,init进程会启动一个用户交互的Shell环境,例如bash。这允许用户通过命令行界面与系统进行交互,并执行各种命令和程序。
用户应用程序执行:在Shell环境中,用户可以执行各种应用程序,包括系统自带的工具和用户自定义的程序。Linux提供了广泛的命令行工具和图形界面应用程序,用于满足各种需求。
课程收获
1.对Linux有了更加深刻的认识,包括进程管理、内存管理、文件系统、设备驱动
2.对 Linux 底层操作系统有了更加深刻的认识。对进程的调度和切换有了更为深刻的认知。
标签:初始化,操作系统,总结报告,虚拟机,启动,用户,内核,Linux From: https://www.cnblogs.com/ttttttx/p/17402772.html