首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

操作系统启动

操作系统启动是个很令人好奇的话题,从按下计算机电源那一刻,计算机从裸机开始呈现一个丰富系统界面,这个从只有硬件逻辑到软件逻辑过程是如何完成?...这里我们将从硬盘分区,三方协议,grub引导启动程序进行讲述,首先介绍硬盘MBR分区形式,然后介绍CPU,BIOS,系统三方协议,讲述从CPU硬件逻辑最终运行内核软件逻辑过程,最后介绍一下引导启动程序发展...在MBR分区中,第一个扇区内容是十分关键,它是主引导记录,如果操作系统需要按照MBR分区形式安装在这个硬盘中,那么需要在主引导记录里填入引导系统启动代码。...变成了stage1,boot.img这些形式内容,这类引导程序可以引导多个操作系统,多种操作系统启动,拥有配置文件和简单命令行界面,功能变得十分强大。...,将会呈现一个选择启动操作系统界面。

1.3K30

操作系统启动篇--01

操作系统启动篇--01 计算机起源 从白纸到图灵机 从图灵机到通用图灵机 从通用图灵机到计算机 打开电源,计算机执行第一句指令什么?...(计算机交给操作系统来管理) 0磁道0扇区是操作系统引导扇区,一共512字节 ---- 0x7c00处存放代码 就是从磁盘引导扇区读入那512个字节 引导扇区就是启动设备第一个扇区,开机时按住...-- 操作系统启动 setup模块,即setup.s 根据名字就可以想到: setup将完成OS启动设置 通过15号中断,读入扩展内存大小到0x90002处,操作系统需要知道当前PC机物理内存大小...Boot扇区读取结束后,会去读取setup扇区内容,最后是system扇区。 操作系统是由一堆源码组合而成,但是只有在确保其组成是有序并且符合规定,才能确保操作系统正常运行。...将操作系统一堆源代码交给makefile编译成一个Image镜像,然后放入0磁道0扇区中。 然后就是从0磁道0扇区开始去读取,完成操作系统初始化和启动过程。

58120
您找到你想要的搜索结果了吗?
是的
没有找到

linux内核启动流程(文章最后流程图)

大家好,又见面了,我是你们朋友全栈君。 原文:linux内核启动流程 本文以Linux3.14版本源码为例分析其启动流程。各版本启动代码略有不同,但核心流程与思想万变不离其宗。...内核映像被加载到内存并获得控制权之后,内核启动流程开始。通常,内核映像以压缩形式存储,并不是一个可以执行内核。因此,内核阶段首要工作是自解压内核映像。...通过linux/arch/arm/boot/compressed目录下Makefile寻找到vmlinux文件链接脚本(vmlinux.lds),从中查找系统启动入口函数。...函数启动用户进程 部分书籍介绍内核启动流程基于经典2.6版本,kernel_init函数还会调用init_post函数专门负责_init进程启动,现版本已经被整合到了一起。...当内核被引导并进行初始化后,内核启动了自己第一个用户空间应用程序_init,这是调用第一个使用标准C库编译程序,其进程编号时钟为1.

1.6K30

从图灵机到操作系统启动

操作系统(OS)是介于计算机硬件和应用软件之间一层软件。操作系统存在可以使我们更高效使用硬件。 操作系统主要管理CPU,内存,终端,磁盘以及文件等资源。...接着从0磁道0扇区读入0x7C00处内容。(0磁道0扇区存是OS引导扇区)这个扇区总共512字节,它是启动设备后访问第一个扇区。引导扇区存放着bootsect.s汇编后代码。...在接下来读取4个扇区内存放着setup程序。在此期间0x10BIOS中断加载一个显示到屏幕上,就是我们开机时看到启动画面。...,将CR0这个寄存器最后一位置位。...所以操作系统是在CPU保护模式下运行。 经过上面一系列过程,我们计算机就算正式开机了。

59320

Deepin操作系统更改开机启动画面和启动延时

本篇文章讲内容主要是如何更改Deepin开机启动画面和启动延迟时间,文章开头忍不住跟大家安利下这个国产操作系统——Linux Deepin,非常适合新手学习Linux系统哦,它这个DDE(桌面环境)做很棒...Deepin 是一个基于 Linux 操作系统,专注于使用者对日常办公、学习、生活和娱乐操作体验极致,适合笔记本、桌面计算机和一体机。...其口号为“免除新手痛苦,节约老手时间”,旨在创造一个全新简单、易用、美观 Linux 操作系统。...在终端中用vim打开/etc/default/grub文件,输入以下命令: sudo vim /etc/default/grub 3 :点击回车后,找到/etc/default/grub文件内容最后一行...5 :执行如下命令更新grub设置: sudo update-grub 最后重启电脑即可。

6.2K20

计算机操作系统-操作系统启动过程

操作系统两种模式 1.实模式(实地址模式) 计算机刚加电时处于实模式下 程序按照8086寻址方式访问0h-FFFFFh(1MB)空间 寻址方式:物理地址(20位)=短地址:偏移地址 CPU单任务运行...2.保护模式 计算机启动成功后处于保护模式下 寻址方式:段(32位)和偏移量(32位),寻址4GB空间 段页式寻址机制(段,页) 虚拟地址,进程,封闭空间 应用程序和操作系统运行环境都被保护 CPU支持多任务...主启动扇区:完成OS加载或启动管理功能 提供菜单:让用户选择不同启动项,实现多重启动 加载核心文化:直接指向可启动区加载操作系统 跳转:将启动管理功能转交给其他loader BIOS和MBR程序运行过程...PBR继续控制后面的引导过程 操作系统启动 (1)初始引导 目的:把OS核心装入内存并使之开始工作接管计算机系统 过程: 1)加电,JUMP POST 2)BIOS中启动程序: 读取0面...1.POST 2.加电后BIOS启动主机自检程序 3.初始引导 BIOS从MBR读取引导程序,装入内存特点文职 引导程序启动DOS7.0,调入操作系统核心 WINDOWS开始接管系统 4

4210

Linux操作系统启动流程梳理

linux系统安装时,如果要想设置开启启动项,可以: 开机到BIOS提醒界面,按键F11(Dell服务器做法)进入BIOS设置BOOT MENU,继而设置启动项:硬盘HD启动,光盘CD/DVD启动,还是...下面就linux操作系统启动过程做一详细解析记录: 加载内核 操作系统接管硬件以后,首先读入 /boot 目录下内核文件。...init进程一大任务,就是去运行这些开机启动程序。但是,不同场合需要启动不同程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。...表示run command(运行程序),最后d表示directory(目录)。...比如,我要重启iptables服务器,就运行下面的命令: [root@bastion-IDC ~]# /etc/init.d/iptables restart /etc/init.d 这个目录名最后一个字母

2.9K81

《笨开发学习操作系统》1启动

虽然我们程序员不是修电脑,虽然计算机启动操作系统启动这个部分其实对工作意义可能不大,但就是上面说那句话,不知道启动,总是说不过去,所以我还是单独把它拿出来,作为我们万里长征第一步。...操作系统启动方法就是 start_kernel (就如同我们写代码时 main 方法一样),首先运行就是我们 0 号进程 ,并且初始化各种所需环境(rootfs、调度模块等),最后从内核态切换到用户态...于是在我翻找了一些资料后发现:GRUB 自有它用处,参考链接我放在最后。...总结 操作系统最简单启动过程就是如下面这张图样子 我最喜欢就是下面这张图,整个详细过程就看它来理解 当我们知道了操作系统是如何启动时候,其实对于之前我来说,最重要一点就是明白了之前我操作系统重装时候到底在装些什么东西...;最后 GRUB 里面其实做了很多事情,并且分了多个阶段,这些阶段分别又做了什么事情呢?

52710

服务器操作系统 CoreOS

传统服务器操作系统,包括大多数Linux发行版,每隔几年都会更换。在这期间,开发者会不断用安全补丁和更新完善这个系统,但是不会进行特别大改动,最终这个操作系统以及其上软件会慢慢僵化。...CoreOS会与更新服务进行交互,查找更新并自动下载可用更新,如果初始状态下,系统在root A下启动,更新就会被安装到root B,重新在root B下启动系统就可以完成更新。...CoreOS为现代网络服务器量身定做,Polvi团队对这个服务器操作系统做了最大精简,所有附加功能都被剔除了,并将操作系统和应用程序做了完全分离。...CoreOS核心思想是降低操作系统和应用程序耦合度,使运行这些服务器公司可以更快速、更廉价地更新自己线上业务。...CoreOS和ChromeOS一样,都基于Linux内核,运行container方式也类似于其它Linux操作系统。 原创文章转载请注明:转载自:服务器操作系统 CoreOS

9.3K30

基于 Linux 0.11 讲解 Linux 操作系统启动原理

不知道大家有没有产生过一个疑问:从给 Linux 服务器按下开机电源按钮后到启动成功一段时间里,在这中间 Linux 操作系统都做了哪些事情?...在 Linux 服务器没有通电时候,操作系统还只是躺在硬盘启动区中一段程序,CPU 没有工作,内存也没有启动。但是在你按下开机键后,Linux 服务器内部就开始变得热闹了起来。...经过几十秒或者几分钟等待,Linux 服务器就可以使用了。 但这中间操作系统都干了啥呢?我有一位朋友叫闪客,就是因为对这个问题好奇,花了两年时间写了 50 多篇文章,并还总结成了一本书。...对于 Linux 启动过程,代码运行在书中总结成下面一张图来表示。但分了 50 小节来讲述每一个步骤中细节。...上面描述这些都是操作系统第 0 号内核线程处理。在操作系统中,0号内核线程是所有进程祖先,是操作系统Linux在初始化阶段从无到有的第一个内核线程 接着最后会切换到用户态模式。

26011

服务器衰退之前最后一次欢呼

在考虑这个问题时,我们认为大萧条是许多行业转折点。因此可以通过对比大萧条时期和现在服务器状况来推测未来服务器方向。 ? 服务器市场:今昔对比 ?...由于中国X86和电源服务器业务发展势头良好,浪潮收入增长了12.1%,达到17.4亿美元。 ? 其他服务器制造商出货量有上升也有下降。...可以看到,在很大程度上由于英特尔和AMD在服务器CPU方面的竞争以及DRAM和闪存价格下降,x86服务器平均成本一直在下降。 ?...非X86服务器出货量增长了17.8%,达到29.1亿美元,IBMSystem z和Power Systems占了非X86服务器市场份额78.8%。...最后一次衰退袭来时,VMware提供了一个可靠企业级服务器虚拟化平台,该平台允许公司通过将物理服务器工作负载聚合到物理服务器虚拟机上,从而以更高利用率运行现有设备。

59230

探索操作系统:内核、启动和系统调用奥秘

你只需要通过点击鼠标、键盘来启动程序,并满足你业务需求。如果在编写代码时还需要考虑与硬件交互,那你可能无法成功编写出任何代码。...内核操作系统核心是内核,市面上有两大阵营:Windows和Linux。它们各有千秋,Windows主要用于个人使用,而服务器层主要使用Linux系统。...接下来我们来看一下系统调用过程:计算机启动过程这里简单引一下ROM,ROM(Read-Only Memory)是一种存储在计算机主板上固化程序。...它主要作用是存储计算机系统启动所需基本输入输出系统(BIOS)固件。当计算机开机时,首先会加载并执行ROM中BIOS程序,它负责初始化硬件设备、检测系统配置和引导操作系统加载过程。...内核是操作系统核心,负责管理进程和线程、内存、硬件设备以及提供系统调用接口。计算机启动过程中,ROM负责加载并执行BIOS程序,而RAM用于存储运行中程序和数据。

24310

Linux操作系统启动流程简单介绍

了解 Linux操作系统启动过程,对Linux操作系统更深入认识和日常运维工作非常有帮助,感兴趣朋友可以了解一下。...今天主要介绍一下CentOS 6.x操作系统启动过程, CentOS 6.x系统启动使用 Upstart 启动服务取代了之前版本采用 System V init 启动服务。...使用Upstart 启动服务效率更高,启动速度更快。 CentOS 6.x操作系统启动流程经历以下几步: 1、服务器加电,加载 BIOS 信息,然后BIOS 进行系统检测。...而 /etc/rc.d/rc.sysinit 配置文件是用来进行操作系统初始化,主要用于配置计算机初始环境。...10、/etc/rc[0-6].d/ 目录中脚本依据设定好优先级顺序依次启动和关闭。 11、最后执行 /etc/rc.d/rc.local 中程序。

1.2K20

操作系统(2)启动、中断、异常、系统调用

最后根据配置加载程序和操作系统内容。具体过程是: 之所以不能从BIOS里面直接读取系统内核映像,是因为要先确定了磁盘上文件系统(市面上文件系统有很多种)才可以读取。...我们是直接预先约定好不需要知道文件系统类型,就可以直接读取第一块数据,然后根据这些数据来识别磁盘上文件系统,最后读取磁盘上操作系统内核映像并加载到内存。...最后提一下BIOS提供功能和限制: 注意,在进入保护模式之后,即离开了实模式之后就不能使用BIOS了,也就没办法使用BIOS提供功能,这时候如果需要使用这些功能就要操作系统自己想办法实现。...自检是为了确定关键几个硬件正常工作。系统检测主要是确定有没有系统存在,例如从U盘中启动系统(WinToGo)前就会先检测一下有没有系统在你U盘里。最后会从指定软盘、硬盘或者光驱读取第一块扇区。...系统调用 系统调用是操作系统对上提供服务接口。 上图为C程序例子。 上图来自Daniel King博客。

1.2K10

Nakama Server, ​启动服务器

下载或访问服务器后,您可以启动它。您必须首先启动数据库服务器。...每个新服务器版本只需要迁移服务器一次。__不__需要在每个服务器启动之前运行此命令。 现在可以启动服务器了。...# start the server and output logs to the terminal nakama 从服务器输出日志将告诉你: 启动服务器哪个版本。...客户端可以访问服务器 IP 地址和端口号。 "启动消息":服务器输出一些第一条日志消息可能以 “WARNING” 开头。...这些指示服务器以 API 密钥(keys)启动,API 密钥是默认值,在部署到生产环境之前必须进行更改。 配置部分涵盖了所有不同服务器选项,可以在启动时进行调整以定制化服务器

1.1K10

服务器怎么装操作系统

作为一个IT工程师,遇到最多机器就是服务器,装操作系统算是比较基础操作,本篇文章主要是介绍我装系统一些方法。进入到系统里面之后操作,不在本篇文章讨论范围之内。1、Web界面安装系统。...服务器除了底层BIOS,还有Web管理系统,可以通过服务器管理口进入。 华为/超聚变管理系统叫iBMC,HPE/惠普叫iLO,华三叫HMM等等。...管理口IP都是固定,可以后续修改,把服务器接入到内网管理。...适用于服务器和个人电脑系统安装,而且可将多个系统拷贝到U盘,在安装界面选择需要安装系统。...以上就是服务器安装操作系统基本方法,少量情况下,可以用web或者U盘安装;多台情况下可以用web和厂商工具安装。

16.1K30
领券