Alibaba Cloud Linux 2 LTS 快速启动优化实践

作者:阿里云操作系统:张世乐

 

概述/Overview

 

Alibaba Cloud Linux 2(原Aliyun Linux 2,简称Alinux 2)是阿里云操作系统团队基于开源Linux内核4.19 LTS版本打造的一款针对云应用场景的下一代Linux OS发行,不仅提供Linux社区的最新增强功能,在提供云上最佳用户体验的同时,也针对阿里云基础设施做了深度的优化。今日Alinux 2 LTS 正式发布,是Alinux 2的一个重要里程碑。这标志着阿里云操作系统团队将为Alinux 2提供长期技术支持、稳定的更新、更好服务,为Alinux 2的用户提供更多保障。Alinux 2 LTS 版本不仅增加了更多社区新功能的支持,对系统启动时间、运行时性能及稳定性都做了许多优化。更详细的更新优化可参考发布记录,推荐直接上手试用体验。Alinux 2在快速启动优化上取得一些不错的效果,同时推出“Alinux 2 qboot快速启动版”镜像(公测中),内核部分启动性能提升40%:

 

 

这里分享一下Alinux 2 LTS在系统快速启动优化上的所做的一些实践。

 

Linux系统启动流程/Boot Process

 

首先定义Linux系统启动,这里我们定义为从系统上电(虚拟机开启),到用户能够登陆(ssh login)为系统启动。通用Linux系统启动大致分为三个阶段:引导阶段(phase#1),内核启动阶段(phase#2)及用户态启动阶段(phase#3):

 

 

其中,

 

·     对物理机产品,开机后运行固件中的BIOS程序,完成基本硬件初始化及上电自检(POST),通过后跳转至系统磁盘引导扇区;

·     对虚拟机(Qemu + KVM)产品,Qemu运行后模拟BIOS,加载系统镜像文件虚拟出系统盘,跳转至系统盘引导扇区;
下面来看看各阶段大致的启动流程。

 

Boot Loader

 

Bootloader是位于系统引导扇区的一段独立的系统程序,用于系统启动初期的硬件初始化,系统分区识别,系统内核加载及跳转执行。目前应用比较广泛的bootloader是用于通用系统的grub2和嵌入式系统的uboot。Grub2是多重引导器(multiboot),提供交互界面,默认配置下有5s交互超时,启动耗时较长。

 

Kernel

 

Bootloader加载Linux内核(一般为压缩内核vmlinuz)到内存,并运行内核自解压缩程序,解压后跳转至start_kernel,开始内核初始化流程:

 

User Space

 

Linux内核完成一系列初始化动作之后,开始运行init程序,创建PID为1的用户态进程,将系统控制权从内核态跳转到用户态。init进程会继续进行用户态启动流程,

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值