科普向 + 折腾向 ——你了解磁盘、分区、文件系统、GPT、UEFI吗?在笔记本上安装五个系统是怎样的体验?
【Windows 7 + Windows 8 (PE) + Windows 10 + deepin-Linux + MacOS X】
前言:随着软硬件技术的发展UEFI引导逐渐取代传统BIOS引导,最新的操作系统都适用于EFI引导,这让各他们可以共存于一台机器。
工具:两个8GB U盘(一个安装PE,一个刻录系统)、Disk Genius磁盘工具、微PE、EasyUEFI、EasyBCD、TransMac v12。
笔记本型号:戴尔灵越5557
配置:i5-6200U + 8G RAM + SAMSUNG 860 EVO SSD(512GB)+ BCM94352Z(802.11ac 支持黑苹果千兆网卡)
引导过程:

磁盘结构:

Clover Bootloader引导界面:

以下是我对这些系统的使用方式:
Windows 7:兼容老旧的开发工具、驱动程序,用于各种EDA和嵌入式开发。
Windows 10:微软最新的操作系统,安装VS2017学习UWP开发。
Deepin-Linux:用于学习Linux、Python等。
MacOS X:安装Xcode学习Swift,IOS开发等。
Windows 8 PE:Win8内核版微PE,集成大量引导修复、磁盘工具,备份和修复其他系统。
1. 磁盘和文件系统
作为数据存储的介质,现在市面上硬盘有机械硬盘(磁记录旋转介质)和固态硬盘(NAND-Flash)两种,虽然所用技术和材料大不一样,但都会被软件抽象成同样的设备所看待。
1.1 MBR和GPT
新的磁盘需要初始化,指定分区表为MBR(旧)或GPT(新):
MBR(Master Boot Record),即硬盘的主引导记录。为了便于理解,一般将MBR分为广义和狭义两种:广义的MBR包含整个扇区(引导程序、分区表及分隔标识),也就是上面所说的主引导记录;而狭义的MBR仅指引导程序而言。
对于MBR磁盘上的分区类型:
1)主分区:也叫引导分区,最多可能创建4个,当创建四个主分区时候,就无法再创建扩展分区了,当然也就没有逻辑分区了。主分区是独立的,对应磁盘上的第一个分区,“一般”就是C盘。在Windows系统把所有的主分区和逻辑分区都叫做“盘”或者“驱动器”,并且把所有的可存储介质都显示为操作系统的“盘”。因此,从“盘”的概念上无法区分主分区和逻辑分区。并且盘符可以在操作系统中修改,这就是要加上“一般”二字的原因。
2)扩展分区:除了主分区外,剩余的磁盘空间就是扩展分区了,扩展分区是一个概念,实际上是看不到的。当整个硬盘分为一个主分区的时候,就没有了扩展分区。
3)逻辑分区:在扩展分区上面,可以创建多个逻辑分区。逻辑分区相当于一块存储截止,和操作系统还有别的逻辑分区、主分区没有什么关系,是“独立的”。
4)活动分区:就是当前活动的、操作系统可以启动的分区。
格式化是针对主分区和逻辑分区的。要格式化是因为这和操作系统管理文件系统有关系。没有格式化的分区就像一张白纸,要写入数据,必须对白纸打上“格子”,每格子里面写一块。而操作系统只认这些格子。
MBR磁盘图解:

GPT(GUID Partition Table),即全局唯一标识分区列表,是一个物理硬盘的分区结构。它用来替代BIOS中的主引导记录分区表(MBR)。它是可扩展固件接口(EFI)标准(被Intel用于替代个人计算机的BIOS)的一部分,被用于替代BIOS系统中的一32bits来存储逻辑块地址和大小
对于GPT磁盘上的分区类型:只有主分区,理论上支持128个主分区,每个主分区上都可以引导操作系统。
1.2文件系统
文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:与文件管理有关软件、被管理文件以及实施文件管理所需数据结构。从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。
常见的操作系统所依赖的文件系统:
Windows :FAT16、FAT32、NTFS等
MacOS X: HFS、HFS+、APFS(MacOS 10.13+)
Linux:EXT系列、JFFS2、YAFFS、RAMFS等,由于底层虚拟文件系统(VFS)的支持,Linux可以兼容其他大多数操作系统的文件系统。
2. BIOS和UEFI
2.1 名词解释
BIOS(Basic Input Output System)全称"基本输入输出系统"。它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。 其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
UEFI(Unified Extensible Firmware Interface)全称“统一的可扩展固件接口”, 是一种详细描述全新类型接口的标准。这种接口用于操作系统自动从预启动的操作环境,加载到一种操作系统上,从而使开机程序化繁为简,节省时间。可扩展固件接口(Extensible Firmware Interface,EFI)是 Intel 为 PC 固件的体系结构、接口和服务提出的建议标准。其主要目的是为了提供一组在 OS 加载之前(启动前)在所有平台上一致的、正确指定的启动服务。传统BIOS主要支持MBR引导,UEFI则是取代传统BIOS,它加入了对新硬件的支持,其中就有2TB以上硬盘。
2.2 启动过程(以Windows为例)
BIOS下的启动过程:
加电自检->按顺序尝试启动项->主引导记录(mbr)->分区引导记录(pbr)->启动管理器(bootmgr)->配置文件(bcd)->winload.exe->ntoskrnl.exe->注册表
UEFI下的启动过程:
加电初始化->efi shell->启动管理器(*.efi)->配置文件(bcd)->winload.efi->ntoskrnl.exe->注册表信息的主开机纪录(MBR)分区表。
附图:

3. Windows 部署篇
3.1 Windows 10安装自行百度,过于简单 略。
3.2 Windows 10 + Windows 7 双系统安装经验分享(待更)
3.3 Win 8 PE 加入BCD引导菜单(待更)
4. Deepin-Linux篇
过于简单 略。
官网:https://www.deepin.org/
5. Mac OS X 篇
过于困难 略。
国内权威黑苹果论坛 - DIY你的苹果系统:
远景论坛:http://bbs.pcbeta.com/forum.php?gid=86
Clover详解:
https://blog.csdn.net/geekmubai/article/details/81608491
一些经验(待更)
科普向 + 折腾向 ——你了解磁盘、分区、文件系统、GPT、UEFI吗?在笔记本上安装五个系统是怎样的体验?的更多相关文章
- linux 磁盘 分区 MBR GPT
磁盘:由许多盘片,机械手臂,磁头和主轴马达所构成的,实际的数据都是写入盘片上面,而读写主要是通过机械手臂可伸展让磁头在盘片(在主轴马达的转动左右下,盘片跟着转动)上面进行读写操作.由于单一盘片写入数据 ...
- 磁盘分区(GPT)
右击 我的电脑 → 管理 → 磁盘管理 (对磁盘1进行分区)右击 磁盘1 → 初始化 磁盘1 右击 磁盘1白色部分 → 新建磁盘分区 先创建主分区(主分区最多创建4个,扩展分区最多1个) 输入分区大小 ...
- 关于0基础磁盘管理(gpt UEFI...)最好的一篇文章(来自gentoo linux)
放链接:https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Disks 顺便几张图 watermark/2/text/aHR0cDovL2 ...
- Linux 系统的磁盘分区_【all】
磁盘的存储逻辑结构 1.主引导扇区(446+64+2) MBR(主引导记录)0磁头0磁道的第一扇区 446字节 -->存放系统的引导程序,同Windows 剩下的64字节,分区表(每个分区16字 ...
- Linux磁盘分区--MBR分区
今天心情不高兴,做IT不容易被公司重视,一定要速度学会运营,成为一个高逼格的技术男. 今天我要熟练掌握linux系统分区的能力.大家都知道,linux系统分区有两种分区格式:GTP和MBR. MBR作 ...
- Linux文件系统简介一(磁盘分区、开机过程、目录结构、文件权限、文件扩展名、目录管理)
Linux:就是一组软件,一套操作系统=核心+系统呼叫接口层. 1.操作系统 操作系统 = 核心(内核) + 系统呼叫(接口) 操作系统其实也是一组程序,重点在于管理计算机的所有活动以及驱动系统中的所 ...
- Linux磁盘分区格式化和扩容
Note:根据各系统上磁盘的类型不同,磁盘命名规则也会不同:例如/dev/xvd,/dev/sd,/dev/vd,/dev/hd 目录 磁盘格式化 MBR格式 GPT分区 磁盘扩容 MBR格式扩容 G ...
- 生成swap分区之利用磁盘分区
生成swap 分区方式很多,有利用磁盘分区来生成swap,这种效率比较高,他并不是文件系统, 另外我们还可以拿出磁盘一些空间,做成swap分区还有通过lvm逻辑卷的方式创建swap分区(这种分区就可以 ...
- Linux磁盘分区/格式化/挂载(树莓派3挂载硬盘)
[前言] 本文将要讲解的功能为Linux环境下对磁盘进行操作.包括分区.格式化.挂载外接移动存储设备等. 该文的写作背景为本人的树莓派需要外接一个固态硬盘作为存储设备,因此,便开始了一系列的折腾. [ ...
随机推荐
- Innovus Lab和Lab Guide下载地址 | Innovus教程 - Flow系列 - 数据准备
本文转自:自己的微信公众号<集成电路设计及EDA教程> <Innovus Lab和Lab Guide下载地址 | Innovus教程 - Flow系列 - 数据准备> ...
- 一次线上遇到磁盘IO瓶颈的问题处理
Load average %wa 的含义是等待输入输出的CPU时间百分比 结合iostat命令可以发现磁盘已经在100%满负荷在跑 await:每一个IO请求的处理的平均时间(单位是毫秒).这 ...
- TLS示例开发-golang版本
目录 前言 制作自签名证书 CA 服务器证书相关 客户端证书相关 证书如何验证 在浏览器中导入证书 导入证书 修改域名 golang服务端 目录 main.go 测试 参考 前言 在进行项目总结的时候 ...
- 【题解】埃及分数-C++
Description 在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数. 如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的. 对于一个分数a/ ...
- 【最小生成树之Kruskal例题-建设电力系统】-C++
前置知识点Kruskal最短路算法,如果没掌握的请先去掌握! 描述 小明所在的城市由于下暴雪的原因,电力系统严重受损.许多电力线路被破坏,因此许多村庄与主电网失去了联系.政府想尽快重建电力系统,所以, ...
- svg文字描边动画
svg动画在网页中是经常见到的,svg动画使得网页看起来清新美观 任何不规则图形都可以由svg绘制完成,当然也包括文字,文字本身就可以看作一个不规则图形
- python 中_init_函数以及参数self
1)class类包含: 类的属性:类中所涉及的变量 类的方法:类中函数 2)_init_函数(方法) 1.首先说一下,带有两个下划线开头的函数是声明该属性为私有,不能在类地外部被使用或直接访问. 2. ...
- spring boot入门篇
Spring Boot[快速入门] Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point ...
- python课堂整理2
一.字节和编码 1个字节是8位二进制 utf-8 表示一个中文要用3个字节 gbk 为中国汉字发明,2个字节可表示汉字 所以 utf-8 可以读gbk编码,而gbk去读utf-8 的内容会乱码 uni ...
- linux初学者-普通磁盘分区篇
linux初学者-普通磁盘分区篇 磁盘是计算机的重要组成部分,是记录数据的场所.在使用磁盘时,经常需要对其进行分区来实现不同的用途.下文将介绍在linux系统中普通磁盘分区的方法. "fdi ...