什么是操作系统

由于不同的硬件它的功能函数并不相同,所以同一个操作系统是无法在不同硬件平台上面运行。每种操作系统都是在它专门的硬件架构上运行的。如果能参考硬件的功能并以此修改你的操作系统程序代码,那经过改版后的操作系统就能够在另一个硬件平台上运行,这个过程称为“软件移植”。

linux由于是开源的操作系统,它的程序代码可以被修改成适合各种硬件架构上面运行,Linux具有“可移植性”。linux其实就是一个操作系统最底层的内核及其提供的内核工具。

操作系统的内核必须要跟硬件配合,与提供及控制硬件的资源进行良好的工作。

Android其实就是Linux内核的分支,只是专门用来针对手机或平板这类的ARM机器所设计的。例如Android10内核为linux内核4.14.117版本。

除了计算机之外,其实家电产品、路由器、交换机、数码相机及其他微型的计算机设备也是硬件系统,也需要操作系统来控制,而操作系统是直接嵌入于产品中,理论上你不应该会修改到这个操作系统,所以就称为嵌入式系统。想要玩嵌入式系统必须要很熟悉linux内核与驱动程序的结合。

云程序的底层也是linux,而云程序搭建出来的虚拟机大多数也是Linux操作系统。

uname -r  查看内核版本

磁盘分区的MBR分区格式的特点

(0)磁盘的第一个扇区的512字节主要有以下两个东西:主引导记录(MBR)指的是可以安装启动引导程序的地方,有446字节;分区表(partition table)指的是记录整块硬盘分区的状态,有64字节。

(1)主要分区与扩展分区最多可以有4个(硬盘的限制),

(2)扩展分区最多只能有一个(操作系统的限制),结合第一条即P(最多3个)+E(最多1个)=最多4个,

(3)逻辑分区是由扩展分区持续划分出来的分区,即逻辑分区在扩展分区里面,

(4)能够被格式化作为数据存取的分区是主要分区和逻辑分区,扩展分区无法格式化,

(5)逻辑分区的数量依据操作系统而不同,在linux系统中sata硬盘已经可以突破63个以上的分区限制。

磁盘分区的GPT分区的特点:

(1)如果磁盘容量大于2TB以上时,系统会在自动使用GPT分区方式包括来处理磁盘分区。

(2)GPT分区已经没有扩展分区和逻辑分区的概念,你可以想象成所有的分区都是主要分区。

(3)某些操作系统要使用GPT分区时,必需要搭配UEFI固件才可以安装使用。

启动流程中的BIOSUEFI启动检测程序。

基本上,目前的主机系统在加载硬件驱动方面的程序,主要有早期的BIOS与新的UEFI两种机制。

BIOS搭配MBR的启动程序:

(1)BIOS:启动主动执行的固件,会认识第一个可启动的设备,

(2)MBR:第一个可启动设备的第一个扇区内的主引导记录块,内含启动引导代码,

(3)启动引导程序(boot loader):一个可读取内核文件来执行的软件(安装在MBR上的一个软件,非常小而高效能),

(4)内核文件:开启启动操作系统。

Boot loader主要任务:

(1)提供选项:用户可以选择不同的启动选项,这也是多重引导的重要功能,

(2)加载内核程序:直接指向可使用的程序区段来启动操作系统,

(3)转交其他启动引导程序:将启动管理功能转交给其他启动引导程序负责。

虽然硬盘只有一个MBR,但是启动引导程序除了可以安装在MBR之外,还可以安装在每个分区的启动扇区(boot sector)。

多重引导的工作总结:

(1)每个分区都有自己的启动扇区;

(2)图中的系统分区为第一第二分区;

(3)实际可启动的内核文件是放置到各分区中的;

(4)启动引导程序只会认识自己的系统分区内的可启动的内核文件,以及其他启动引导程序而已;

(5)启动引导程序可直接指向或是间接将管理权移交给另一个管理程序。

“如果要安装多重引导,最好先安装windows再安装linux”这是因为:

(1)linux在安装的时候,你可以选择将启动引导程序安装在MBR或个别分区的启动扇区,而且linux的启动引导程序可以手动设置选项(就是上图中的M1和M2),所以你可以在linux的启动引导程序里面加入windows启动的选项。

(2)windows在安装的时候,它的安装程序会主动覆盖掉MBR以及自己所在分区的启动扇区,你没有选择的机会,而且它没有让我们自己选择选项的功能。

核心概念:

(1)启动需要启动引导程序

(2)启动引导程序可以安装在MBR及引导扇区两处。

UEFI搭配GPT的启动程序

UEFI(Unified extensible Firmware Interface)主要是想要取代BIOS这个固件接口,因此UEFI也称为UEFI BIOS。

UEFI其他优点

(1)UEFI像是一个低级的操作系统,只要加载驱动程序即可控制操作。

(2)一般来说,使用UEFI的主机,再开机的速度上要比BIOS快。

(3)有安全启动(secure boot)功能来防止骇客借由启动阶段来破坏系统取得系统的控制权。

(4)UEFI可以直接获取GPT的分区表。

UEFI缺点:

(1)使用轮询(Polling)的方式来管理硬件资源,与BIOS直接使用CPU中断的方式来管理比较,轮询的效率稍低。

(2)不能提供完整的缓存功能,执行效率无法提升。(即效果华丽但性能不佳)

(3)安全启动功能使得即将启动的操作系统必须要被UEFI验证,否则无法顺利启动。但是加入该功能后,许多的操作系统包括Linux就无法顺利启动。因此,某些时刻,你可能得要将UEFI的secure boot功能关闭,才能顺利地进入linux。

(4)最好依旧拥有BIOS boot的分区(如果使用类似grub的启动引导程序的话,则需要额外划分出一个“BIOS boot”的分区,这个分区才能放置其他开机过程所需的程序,在CentOS中,这个分区一般占用2MB左右)支持,同时,为了与windows兼容,并且提供其他第三方厂商所使用的UEFI应用程序存储的空间,你必须要格式化一个FAT格式的文件系统分区,大约提供512MB到1GB左右的大小,以让其他UEFI执行较为方便。

如何结合文件系统与目录树的关系(挂载)

挂载:指的是利用一个目录当成进入点(进入点的目录称为挂载点),将磁盘分区的数据放置在该目录下;也就是说进入该目录就可以读取该分区的意思。

判断某个文件在哪个分区的方法:反向追踪,看哪个“进入点”先被查到那就是使用的进入点/挂载点。

强烈建议使用自定义安装(custom)的模式

对于初次接触Linux

(1)只要划分"/"“交换分区swap”即可。建议直接以一个最大的分区“/”来安装系统。因为/usr是linux的可执行文件及相关的文件存放目录,所以其需求很大,以防无法将数据完全写入。

(2)建议分区的方法:预留一个备用的剩余磁盘容量。该备用的剩余容量可以划分出新的分区用来备份重要的配置文件或者脚本,好处之一是重新安装的时候我的一些软件或工具程序马上就可以直接在硬盘中找到,比较便利。

(3)不建议使用发行版所提供默认的Server安装方式。选择Server的时候,请确定你的硬盘数据不再需要,因为linux会自动地把你的硬盘原有数据删除。

对于熟手:

常见地符合容量大且读写频繁的目录:/boot、/、/home、/var、swap、/usr。如果希望邮件主机大一些,则给/var数个GB大小;如果开放samba服务,给每个人提供数据备份的空间,则/home设置大一些;至于/usr的容量,大概只要给2~5GB即可;通常1GB的swap即可。因此,特别注意主机的服务种类,再进行硬盘规划。

开始安装CentOS

在linux中可以用以下命令制作启动硬盘:dd if=centos7.iso of=/dev/sdc    假设你的usb设备为/dev/sdc,而ISO文件名为centos.iso

注意:一般的主板环境中,使用usb2.0的u盘识别为便携设备,但是usb3.0设备可能会被识别为一块磁盘,所以在BIOS的设置中,需要将第一优先启动设备设置为”磁盘启动“才能使用这块USB设备来安装Linux。

加入强制使用GPT分区表的安装参数
如果磁盘容量小于2TB,系统默认使用MBR分区表来安装,那如果想要强制使用GPT分布表的话,可以这么做:

(1)使用箭头,将光标移动到【install centos 7】选项,

(2)按下键盘的【tab】键,让光标移动到界面最下方输入额外的参数,注意各个参数之间要有空格,重点是输入inst.gpt这个关键词:vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet inst.gpt

磁盘分区的配置

注:交换分区是当物理内存容量不够用时,可以拿这个部分来存放内存中较少被使用的数据,以前都建议交换分区需要内存的两倍,但是现在的内存都够大了,交换分区1~2GB就好。老实说,如果你的系统会使用到交换分区,那代表内存花的钱不够多,需要继续扩展内存。

操作系统和磁盘分区及引导相关推荐

  1. 银河麒麟桌面操作系统之磁盘分区与磁盘挂载

    今天跟大家分享一篇干货 - - 银河麒麟添加硬盘与挂载硬盘,也就是磁盘分区与磁盘挂载 本文使用fdisk命令进行操作 测试环境:虚拟机(因为使用的是虚拟机,因此小编添加的磁盘容量较小) 系统版本:Ky ...

  2. 【CentOS Linux 7】实验3【用户组群管理、磁盘分区及文件系统管理】

    Linux系统及应用---调研报告 [CentOS Linux 7]实验1[VMware安装.新建虚拟机:63个基础命令运行结果图] [CentOS Linux 7]实验2[Shell编程及应用] [ ...

  3. 计算机如何将两个磁盘合在一起,Win7系统如何合并磁盘分区将两个或多个合并到一起...

    Win7系统如何合并磁盘分区将两个或多个合并到一起 腾讯视频/爱奇艺/优酷/外卖 充值4折起 在重装雨林木风Win7系统之前,进行了磁盘分区,装完系统后才发现有一个磁盘只分到了17.4GB,于是就想到 ...

  4. linux操作系统分区图解,图解磁盘分区介绍(超经典)

    C.1. 硬盘基本概念 硬盘功能极为简单 - 它们被用来可靠地储存及检索数据. 在讨论磁盘分区之类的问题时,了解一些基础硬件知识至关重要.不幸的是,这又极容易使人陷入小节,忽略全局.因此,本附录使用了 ...

  5. 磁盘分区格式(MBR分区和GPT分区)和启动引导模式(Legacy和UEFI)的关系

    文章目录 1. 专业名词概览 2. 磁盘分区格式:MBR分区和GPT分区 2.1 简介 2.2 区别 3. 启动引导模式:Legacy BIOS和UEFI BIOS 3.1 Legacy BIOS的启 ...

  6. BIOS和UEFI的区别,系统安装引导以及MBR和GPT磁盘分区

    前言 安装系统是计算机专业的日经操作,然而就算你是身经百战,也可能会遇到各种各样棘手的问题,对系统的启动流程也是似懂非懂(俺也一样),每次碰到问题都会花去大量的时间去查询解决方案,最后很多时候都免不了 ...

  7. Linux磁盘分区以及多重引导简述

    Linux磁盘分区以及多重引导简述 要了解Linux的磁盘分区,首先看看各种硬件设备在Linux中的文件名字. 以旧有的Windows观点来看,你可能会有一块磁盘并且把它分区成C:,D:,E:盘.那个 ...

  8. linux服务器引导分区,Linux系统的引导过程和磁盘分区信息

    Linux系统的引导过程和磁盘分区信息 作者:chinaitlab 佚名 2005-12-07 00:00 评论 分享 [IT168 服务器学院] 系统的引导过程和磁盘分区信息 在PC机上,最初的启动 ...

  9. gentoo linux 分区_小白安装Gentoo Linux操作系统——磁盘分区

    磁盘分区规划 在日常安装Gentoo Linux操作系统前需要对系统使用的磁盘分区进行规划,规划原则需考虑磁盘容量.系统规模与用途. 现阶段个人PC的磁盘容量已近乎TB级别,磁盘容量已不再成为系统安装 ...

最新文章

  1. 180615-精度计算BigDecimal
  2. 一步一步SharePoint 2007之十七:解决实现Form认证后无法再用SharePoint Designer编辑网站的问题...
  3. Python 通过ctypes调用 ICTCLAS3.0.DLL
  4. 在深度神经网络中你有多吸引人?
  5. cocos2dx ios入口类_2.cocos2d-x 第一个项目
  6. 软件构造学习笔记-第六周
  7. 【jupyter】notebook屏蔽warning信息输出
  8. jq 和java 多张图片_jQuery多个事件触发相同的功能
  9. EVENT:10218 dump uba of applied undo
  10. All xxx functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
  11. 最新高清IT职业技能图谱(15图)
  12. SQL Server 2016 安装
  13. 修改服务器cimc地址,【交换机在江湖】实战案例十三 HUAWEI S系列交换机802.1x特性对接H厂商IMC服务器配置指导...
  14. 微信小程序的基础实现
  15. HTML5 Audio时代的MIDI音乐文件播放 .
  16. Diablo3英雄榜-使用Volley和Gson来处理暴雪API的Json数据
  17. 私域运营电商平台和传统电商平台有什么不同?
  18. 使用eclipse编写第一个Java程序及运行(超详细)
  19. 认知升级之第一性原理
  20. 武汉大学 gps 计算机 陈冰,武汉大学2015届优秀毕业研究生名单.doc

热门文章

  1. 信捷PLC与昆仑触摸屏5轴示教程序
  2. windows7计算机配置要求,win7系统要求电脑最低配置多少
  3. 操作系统面试、复试问答题
  4. HTML5+CSS大作业——仿新浪微博个人主(4页) html期末作业代码网页设计
  5. Shell 脚本详解
  6. 博弈论2-哈尔冰工业大学
  7. Android WebView与JS的交互方式
  8. Qt 界面加载卡顿或刷新问题
  9. 数据预处理相关Demo(缺失值、均值方差标准化、极差法归一化、主成分分析)
  10. ENVI5.3.1,按经纬度裁剪影像