附录1· 初识Linux操作系统
汇编器 NASM
链接 LD
调试 GDB
Bochs
Bochs模拟器
微内核 单内核
=====================Linux特点=====================
以下所有内容是基于Linux0.01的基础上描述的。
1.linux 内核的函数调用不使用消息传递机制,而是直接的函数调用。
2.多线程的文件系统。
3.中断是不隐藏的。
======================OS的存储管理MM=============================
下面讲讲存储管理:MM
存储管理是针对虚拟空间的管理。存储管理包含两种管理方式:分页管理paging和分段管理segmentation;
4G空间被分成一定数量的段。第一个段为核心内存段。其拥有完整的物理地址映射。
=====================Linux文件结构=========================
boot
boot 核心引导代码
fs 文件系统
include 头文件
init Init进程---Linux中执行的第一个进程。
kernel 系统调用(systemcall)
lib
lib 库函数
mm 内存管理
tools 内核引导文件的制作工具。
==========================操作系统引导============================
DOS
DOS系统在磁盘中
磁盘的组成如下:第一扇区主引导程序(硬盘启动时首先执行的程序,由他装入活动分区引导程序)分区信息表(各个分区引导指示符)分区引导程序、文件分配表文件根目录区 文件数据区。
启动过程:
1.机器加电
2.BIOS自检,BIOS在内存的地址为OFFFF:0000,CPU从该地址开始执行(CPU、RAM、DISK等设备检测)
3.计算机将硬盘的0柱面0磁头1扇区(主引导区MBR)中的512B读入内存0000:07C00;并跳到此处执行。
4.检查0000:7DFE是否等于0xAA55.如果不等于则去尝试其他启动介质。还没有就显示‘XXXX’并死机。
5.跳转到0000:7c00处并执行。
6.MBR首先将自己复制到0000:0600处。然后继续执行。
7.MBR在主分区表中搜索标志为活动的分区,如果没有或者超过一个则停止。
8.检查0000:7DFE是否等于0xAA55。如果不是则显示‘XXX’然后停止。
9.跳转到0000:7c00处继续执行特定的系统的启动程序。
10.启动系统。
硬盘主引导扇区介绍:
MBR+DPT+BRI:主引导记录区、硬盘分区表、引导扇区。
硬盘主引导功能:
1.人为修改引导程序或者清除活动分区标志 都将使硬盘无法启动。
2.加密整个硬盘:主引导扇区末尾有效标志是AA55H,清除或者修改此位可以达到加密硬盘的目的。恢复AA55h即可以解密硬盘。
3.加密单个硬盘分区:可以通过修改分区表的某一分区类型,通过无法识别的方式来加密该分区。
4.加入硬盘启动口令识别:
5.多操作系统的选择
6.引导扇区的自我修复。
============boot.s启动===============
机器加电时,boot.s被BIOS的引导程序加载到地址0X7C00处执行,然后BOOT.S将自己移动到0X90000处然后执行。
执行boot.s时使用BIOS的中断功能,加载系统核心到0x1000处,接下来禁止所有中断,移动系统核心到0x0000处,切换处理器到保护模式,
调用系统的开始程序,系统核心开始运行后,将重新设置保护模式,然后打开中断。
附录1· 初识Linux操作系统的更多相关文章
- .Neter玩转Linux系列之一:初识Linux
一.为什么要学习Linux (1)首先我们欣赏一下,曾经的微软是如何看待Linux的,是不是很惊讶,微软还是很可爱的(#^.^#) 如今的微软看待Linux的态度:有人说微软技术那么厉害,难道微软就不 ...
- Linux学习之CentOS(三)--初识linux的文件系统以及用户组等概念
Linux学习之CentOS(三)--初识linux的文件系统以及用户组等概念 进入到了Linux学习之CentOS第三篇了,这篇文章主要记录下对linux文件系统的初步认识,以及用户组.用户权限.文 ...
- linux学习:【第1篇】初识Linux及安装
狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! linux学习:[第1篇]初识Linux及安装 写在前面 学习之初看了一段文章,很有感触,所以也 ...
- Linux入门——初识Linux
Linux入门——初识Linux 摘要:本文主要说明了Linux是什么,Linux发展历史,以及同Linux系统有关的一些基本知识. 简介 操作系统 Linux系统同Windows系统.Mac系统一样 ...
- Linux操作系统服务器学习笔记一
初识Linux: Linux 是什么? Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和网络协议 ...
- 初识Linux shell
目录 初识Linux shell Linux 深入探究Linux内核 系统内存管理 交换空间 页面 换出 软件程序管理 Linux中的进程 Linux系统的运行级 硬件设备管理 插入设备驱动代码的方法 ...
- 初识linux
1.版本 稳定版本:偶数版如2.6.X 发展中的版本:奇数版如2.5.X linux distribution包含:linux kernel + free software + documentati ...
- Linux操作系统备份之三:通过二进制拷贝(dd)方式实现Linux操作系统数据的备份
前面有两篇文章,<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>和<Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份& ...
- Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份
http://www.tektea.com/archives/2163.html. 在<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>文章中,我们介绍了使 ...
随机推荐
- 删除smartygit的配置文件
SmartGit Windows: %APPDATA%\syntevo\SmartGit\OS X: ~/Library/Preferences/SmartGit/Unix/Linux: ~/.sma ...
- 解决Ubuntu "E: 软件包 vim 还没有可供安装的候选者"问题
sudo apt-get update 试着运行这段代码后再尝试sudo apt-get install 安装语句
- haproxy para config
.. from http://www.cnblogs.com/dkblog/archive/2012/03/13/2393321.html 常用配置选项: OPTION 选项: option http ...
- Leetcode: Bomb Enemy
Given a 2D grid, each cell is either a wall 'W', an enemy 'E' or empty '0' (the number zero), return ...
- form表单编码方式设置为multipart/form-data,后台参数出现乱码情况
一般在上传图片过程中,form中的编码方式一般采用multipart/form-data方式编码,但是后台这取参数时,可能会出现乱码情况:这里后台要采用转换编码方式: 页面: 后台:获取表单元素时,
- MySQL添加用户、删除用户与授权
MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 1.1 登录MYSQL: @>mysql -u root -p @&g ...
- php json 格式化
header('content-type:application/json;charset=utf8'); $arr = array( 'status' => true, 'errMsg' =& ...
- STL-<queue>-priority queue的使用
简介: 优先队列是一种容器适配器,优先队列的第一个元素总是最大或最小的(自定义的数据类型需要重载运算符).它是以堆为基础实现的一种数据结构. 成员函数(Member functions) (const ...
- 存储过程中的output跟return区别及实例说明
存储过程return,表示该存储过程执行到当当前return位置,不再向下执行: 存储过程写法:set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER ...
- android 流量 压缩
引用:http://my.eoe.cn/blue_rain/archive/340.html 对于目前的状况来说,移动终端的网络状况没有PC网络状况那么理想.在一个Android应用中,如果需要接收来 ...