Python 2、cpu及储存器
一、cpu详解
1. cup指令集
cpu是计算机的大脑,大脑里集成了一系列具体控制身体其他器官做事的指令集,所以站在纯硬件角度去看,计算机所有其他组件都由cpu发出的指令控制。
2. x86框架64位(*****)
- x86--> cpu型号
- -64 --> cpu一次能从内存中取出指令的位数
- cpu具有向下兼容性
- -64的可以运行-32的程序
3. 内核态和用户态(*****)
内核态、用户态是指cpu的两种工作状态。
- 内核态:代表cpu运行的程序是操作系统的代码,可以操作计算机硬件(控制其他硬件指令集+运算相关指令集)
- 用户态:代表cpu运行的程序是应用程序,不能操作硬件(运算相关的指令集)
- 内核态与用户态的转换
- 应用程序的运行必然会涉及到计算机硬件的操作,那就必须由用户态切换到内核态下才能实现,所以计算机工作时,一直在频繁发生内核态与用户态的转换。
4. 多线程与多核芯片
- 2核4线程:假4核,比2核强,比真4核弱
- 2核代表有两个cpu,4线程指的是每个cpu有2个线程
- 4核8线程:假8核,比4核强,比真8核弱
- 4核代表有4个cpu,4线程值的是每个cpu有2个线程
二、 存储器
1. RAM:内存
2. ROM:“只读内存”
- 存放在计算机厂商写死在计算机上的一段核心程序-->BIOS
3. CMOS:储存器,存取速度慢,断电数据丢失,但是耗电量极低。-->存储BIOS的一些数据
4. 硬盘
- 机械硬盘
- 磁道:一圈数据,对应着一串二进制(1bit代表一个二进制位)
8bit(比特位)=1Bytes(字节) 1024Bytes=1kb 1024kb=1MB 1024MB=1GB 1024GB=1TB 注意:硬盘厂商会以1000为换算单位,所以我们买的硬盘会不标注的小。
-
- 扇面:
一个扇区通常位512Bytes 站在硬盘的解读,一次性读取写数据的最小单位为扇区 操作系统一次性读写的单位是一个block块==>8个扇区的大小=4096Bytes
-
- 柱面
- 固态硬盘:闪存芯片
5.IO延迟 (*****)
一块7200/min的机械硬盘,它每秒转12转,而转一圈的时间是8ms
- 平均寻道时间:机械手臂转到数据所在磁道需要花费的时间,受限于物理工艺水平,目前机械硬盘可以达到的是5ms.
- 平均延迟时间:转半圈需要花费4ms,受限于硬盘的转速。
IO延迟 = 平均寻道时间 + 平均延迟时间
注意:优化程序运行效率的一个核心法则,就是能从内存取数据,就不要从硬盘取
6.虚拟内存
在硬盘上取一点地方,当内存不够时,充当内存,速度没有内存快,在LInux中用swap表示。
三、操作系统启动流程(*****)
1. BIOS(Basic Input Output System)
厂商出厂时,直接把BIOS系统写入ROM设备中
2. 裸机
新电脑没有系统时(win、linux、mac),ROM充当内存,存放BIOS系统,CMOS充当硬盘,cup读取。
3. 操作系统启动流程(*****)
- 计算机通电
- BIOS开始运行,检测硬件:cpu、内存、硬盘等。
- BIOS读取CMOS储存器中的参数,选择启动项。
- 从启动设备上读取第一个扇区内容(MBR主引导记录512字节,前446为引导信息,后64位为分区信息,最后两位为标志)。
- 根据分区信息读取bootloader启动加载模块,启动操作系统。
- 然后操作系统询问BIOS,以获取配置信息。对于每种设备,系统会检测其设备驱动程序是否存在,如果没有,系统会要求用户安装驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。
4. 应用系统启动流程(*****)
- exe快捷方式(文件绝对路径),当双击后,就是告诉系统说,我有一个应用程序需要执行,它的路径是(exe文件的绝对路径)。
- 操作系统根据文件路径找到exe程序所在硬盘的位置,控制器指令从硬盘加载到内存
- 然后控制cpu从内存中读取刚刚读入内存的应用程序的代码执行,应用程序完成启动
5. 操作系统密码破解与安全
例如:本地硬盘上有密码的win10系统,我们拿一个装有另一个无密码的操作系统,通过BIOS修改启动项,然后进入无密码系统,可以把本地硬盘上的系统密码给删掉。
如何防范:BIOS设密码
BIOS设密码如何破解?
扣主板电池
浙公网安备 33010602011771号