Linux-设备-磁盘
磁盘的每个扇区为512bytes。磁盘的第一个扇区记录了整块磁盘的重要信息,包含有主引导分区(MBR):可以安装引导加载程序的地方,有446bytes;分区表(partition table):记录整块硬盘分区的状况,有64bytes。
系统在开机的时候会自动去读取这个MBR的内容,这样系统才会知道程序放在那里且该如何进行开机。
分区表记录的是整块硬盘的分区记录,最多为四组记录。即一块硬盘最多只能分为四个(主/扩展)区,这四个分区被称为主(primary)或扩展(Extended)分区。柱面是分区的最小单位,分区表通过柱面的号码来记录每个分区的大小。
硬盘的分区在Linux中的命名是通过在硬盘名称后加数字来表示,如:/dev/hda表示硬盘,则/dev/hda1表示该硬盘的第一个分区。注意:硬盘的第一个分区不包含第一个扇区(MBR)。
当一个主分区被继续划分为多个分区后,该主分区成为扩展分区,同时划分出的多个分区被称为逻辑分区。在扩展分区的第一个扇区中也记录了自身分区的逻辑分区记录信息。注意:扩展分区不能进行格式化;由于/dev/hda1~/dev/hda4名称是留给主分区或扩展分区使用,所以逻辑分区的名称是从/dev/hda5开始;扩展分区最多只能有一个(操作系统的限制);如果扩展分区被破坏,则所有的逻辑分区将会被删除,因为逻辑分区的信息都记录在扩展分区里面。
CMOS:记录各项硬件参数且嵌入在主板上面的存储器。
BIOS:写入到主板的程序。开机的时候计算机系统会主动执行的第一个程序。BIOS会分析计算机的硬盘信息,读取硬盘的MBR。
MBR:MBR中存放着引导加载程序。
引导加载程序 (boot loader):目的是加载内核文件。引导加载程序是操作系统在安装时提供,能够识别硬盘内的文件系统格式。引导加载程序除了可以安装在MBR,还可以安装在每个分区的引导扇区(boot sector)(如果该分区安装了系统,则会生成引导扇区)。如果一个硬盘存在多个系统(当然每个系统占有一个分区),则硬盘存在多个引导加载程序。loader只认识自己的系统分区内的可开机内核文件,以及其他loader而已。loader可直接指向或间接将管理权转移交给另一个管理程序。
内核文件:开始启动操作系统。放在各分区内。
开机顺序:CMOS->BIOS->MBR->boot loader->自己分区的内核文件/(其他分区boot loader->自己分区的内核文件/其他分区boot loader。。。)。
注意:
1、安装多重引导,最好先安装Windows,再安装Linux。
解析:Linux安装的时候,其引导加载程序可以安装在MBR或者其他的分区的启动扇区boot sector,并且,Linux的Boot Loader可以设置菜单,假如Windows的loader。
Windows安装的时候,MBR和自己分区的启动扇区会自动被覆盖,无法进行手动操作。
Linux-设备-磁盘的更多相关文章
- Linux下磁盘挂载
公司硬盘不够用了,新买了一个存储,需要挂载到现在的系统上.前期的步骤就不说了,运维全部搞定,无非是硬件和网络那一套,这里只说分配到本人后在Linux下如何挂载. 具体步骤如下: 1.查看是否已经分配 ...
- (转载)使用 udev 高效、动态地管理 Linux 设备文件
概述: Linux 用户常常会很难鉴别同一类型的设备名,比如 eth0, eth1, sda, sdb 等等.通过观察这些设备的内核设备名称,用户通常能知道这些是什么类型的设备,但是不知道哪一个设备是 ...
- linux设备驱动概述,王明学learn
linux设备驱动学习-1 本章节主要学习有操作系统的设备驱动和无操作系统设备驱动的区别,以及对操作系统和设备驱动关系的认识. 一.设备驱动的作用 对设备驱动最通俗的解释就是“驱使硬件设备行动” .设 ...
- Linux 设备驱动 Edition 3
原文网址:http://oss.org.cn/kernel-book/ldd3/index.html Linux 设备驱动 Edition 3 By Jonathan Corbet, Alessand ...
- 嵌入式 使用udev高效、动态地管理Linux 设备文件
本文以通俗的方法阐述 udev 及相关术语的概念.udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例.本文会使那 ...
- 【转】使用 udev 高效、动态地管理 Linux 设备文件
简介: 本文以通俗的方法阐述 udev 及相关术语的概念.udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例.本 ...
- 《Linux设备驱动开发具体解释(第3版)》进展同步更新
本博实时更新<Linux设备驱动开发具体解释(第3版)>的最新进展. 2015.2.26 差点儿完毕初稿. 本书已经rebase到开发中的Linux 4.0内核,案例多数基于多核CORTE ...
- 【转】Linux设备驱动--块设备(一)之概念和框架
原文地址:Linux设备驱动--块设备(一)之概念和框架 基本概念 块设备(blockdevice) --- 是一种具有一定结构的随机存取设备,对这种设备的读写是按块进行的,他使用缓冲区来存放暂时 ...
- 【转】深入浅出:Linux设备驱动之字符设备驱动
深入浅出:Linux设备驱动之字符设备驱动 一.linux系统将设备分为3类:字符设备.块设备.网络设备.使用驱动程序: 字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据 ...
- Linux 设备驱动之字符设备
参考转载博客:http://blog.chinaunix.net/uid-26833883-id-4369060.html https://www.cnblogs.com/xiaojiang1025/ ...
随机推荐
- java常用容器简要性能分析(List。Map。Set)
嗯,实习的时候看到这个,感觉蛮好,这里摘录学习,生活加油: 我曾经害怕别人嘲笑的目光,后来,发现他们的目光不会在我身上停留太久,人们更愿意把目光放在自己身上. 知乎上看到,讲给自己. List Lis ...
- O3优化模板
#pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize("Ofast") #pragma GCC ...
- 四则运算APP版
(一)四则运算APP版 这这个Demo的目的就是强化一下本周学习的Android的Jetpack里的新内容,接下来我将通过这个Demo来展示我所学到的新知识. 先列出新学到的知识:ViewModel, ...
- 基础组合问题 ————从n个物品里选m个
package test; import java.util.*; public class Main{ public static int f(int n,int k, int goal){ if( ...
- bugku论剑场web解题记录
前言 国庆这几天感觉没什么好玩的地方,家又离的太远,弱鸡的我便决定刷刷题涨涨知识,于是就有了这篇文章.. 正文 写的不对的地方欢迎指正 web26 打开直接就是代码,这应该就是一道代码审计的题了 这里 ...
- Java网络编程——Socket
网络是连接不同计算机的媒介,不同的计算机依靠网络来互相通信,即传递数据. Java中与网络编程相关的部分主要是Socket(套接字),它作为一种抽象的结构,实现了与通信相关的各类方法,构成一套完整的通 ...
- OpenCV-Python 哈里斯角检测 | 三十七
目标 在本章中, 我们将了解"Harris Corner Detection"背后的概念. 我们将看到以下函数:cv.cornerHarris(),cv.cornerSubPix( ...
- Redis这些知识你知道吗?
1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Redis的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库 ...
- 模块 string 常用序列字符
自从知道string模块后再也不用abcd了 >>> string.digits #数字 '0123456789' >>> string.ascii_letters ...
- [白话解析] 通俗解析集成学习之bagging,boosting & 随机森林
[白话解析] 通俗解析集成学习之bagging,boosting & 随机森林 0x00 摘要 本文将尽量使用通俗易懂的方式,尽可能不涉及数学公式,而是从整体的思路上来看,运用感性直觉的思考来 ...