您的位置:首页 > 运维架构 > Linux

Android内核剖析读书笔记-----1.1:Linux文件系统概述,1.2:Linux启动过程

2014-10-31 13:41 316 查看
昨晚,花了将近3H才阅读2章内容,感觉自己进度是够慢的了,但是也感觉得到这次读书,比之前读书看视频来的更踏实,印象更深刻。以前读书重于进度,每天都给自己,定下任务要看多少章节。为了完成任务,经常不走心,合上书就忘了。现在想来这样其实也是浪费时间,时间花费了却没有吸收到东西。这次读书,我每读完一段就会停下来,总结这段作者给读者传授些什么信息。通过总结的过程加深了对知识点的影响。好了废话不多说了,接下来我把昨晚学习到的新知识备注一下。
1.1:Linux文件系统概述

打开Linux的一个Terminal,

输入以下命令:

cd /

ls

可以看到Linux系统文件系统的主要目录:

bin ----> 用户级二进制工具

boot ----> 内核的镜像文件,bootloader程序读取运行

sbin ----> 管理员级二进制工具

dev ----> 各种硬件的设备文件

etc ----> 系统及用户程序的配置文件

home ----> 用户主目录

lib ----> 系统运行时所需的各种类库

opt ----> 系统附带的一些应用程序

proc ----> 内核和进程所虚拟的系统文件

root ----> 管理员工作目录

sys ----> 一般是驱动文件虚拟的系统文件

usr ----> 管理员安装的用户通用的应用程序

var ----> 系统运行时候的调试信息或者统计文件

总的来说,Linux文件系统不完全等同于我们常用的Windows文件系统,Linux文件系统有两层意思,一是rootfs(根文件系统),二是基本类似于Windwos文件系统的储存类文件系统。

根文件系统有以下特点:

1:文件不仅指硬盘上的数据,也指任何设备资源,所有硬件资源都可以抽象为文件,比如内存,CPU等都被内核抽象成文件。

2:文件或目录不都对应硬盘空间,比如sys,proc,dev这三个目录就是由内核或驱动维护的设备文件。

3:rootfs不能和储存类文件系统并列,储存类文件系统只能挂载到rootfs的子目录下。

4:Linux储存类文件系统支持windows所支持的FAT16,FAT32,NTFS文件系统类型。更常用的是ext2,ext3,ext4,yaffs等。

Linux挂载和卸载储存类文件使用mount和umount命令。

1.2:Linux系统的启动过程

虽然根据硬件的不同,Linux系统的启动会有细小的细微差异,但是从计算机系统的角度来看,Linux系统的启动分为:

cpu复位装载bootloader程序 ----> Linux内核启动 ----> 运行第一个程序

普通Linux过程:

1:cpu通电复位,装载bootloader程序,根据特殊引脚的高地电平不同判断Linux内核装载位置。

2:Linux内核初始化各种硬件

3:运行第一个Terminal程序。

基于Linux的Android启动过程:

1:cpu通电复位之后,读取处理器片上Rom的bootloader程序

2:加载uboot/fastboot程序,初始化硬件。

3:判断是否有指定特殊按键按下,有则进入调试模式,没有则加载指定位置的Linux内核程序并运行

ARM,处理器,CPU三个知识点的区别和联系:

ARM 是一家公司的名称,从技术的角度来看这是一种CPU架构

处理器 包括CPU,片上ROM,接口等不同硬件逻辑的统称。

CPU 处理器内部中央处理单元的检测,处理器分为短指令集架构和长指令集架构,ARM就是短指令集架构的一直。

昨晚3H就看了这么多,现在总结起来,好多知识点还是不知道怎么表达,还总要翻书查找原话,写着博客又花了1.5H,这效率,我也真是醉了... 得改改学习方式了...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐