CPU的分类与指令集:
1)X86 - 32 X86 - 64 :
X86 指的是 CPU的型号
32 指的是 CPU一次性能从内存取出的指令的位数是32位
64 指的是 CPU一次性能从内存取出的指令的位数是64位
2)CPU具有向下兼容性:
指 64的CPU能运行32位的程序也能运行64位的程序
3)内核态和用户态:
代表CPU的两种工作状态:
1、内核态:运行的程序是操作系统,可以操作计算机硬件
2、用户态:运行的程序是应用程序,不能操作计算机硬件
3、内核态和用户态的转换:
应用程序的运行必然涉及到计算机硬件的操作,那就必须由用户态切换到
内核态下才能实现(比如要永久保存应用程序的数据到磁盘),所以计算机工作时
在频繁的发生内核态和用户态的转换
4)多线程和多核芯片:
2核4线程:
2核代表有两个CPU,4线程指每个CPU都有两个线程,可以看成假4核
4核8线程:
4核代表有四个CPU,8线程指每个CPU都有两个线程,可以看成假8核
存储器:
1)RAM:内存
2)ROM:“只读内存”
存放计算机厂商写死在计算机上的一段核心程序 =》 BIOS(Basic Input Output
System)
3)CMOS:存取速度慢,断电数据丢失,耗电量极低(及时更新电脑的时间数据)
4)硬盘:机械硬盘(磁盘)
磁道:一圈数据,对应着一串二进制(1bit代表一个二进制位)
8bit比特位 = 1Bytes字节
1024Bytes = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
扇区:一个扇区通常为512Bytes
硬盘一次性读写数据的最小单位为扇区
操作系统一次性读写的单位是一个block块,一个block块 == 8个
扇区的大小 == 512 * 8 = 4096Bytes (block块的大小可以修改
提高操作系统的效率)
IO延迟:以一个7200转的硬盘为例单位是每分钟
7200转/min =》 120转/s =》 1/120转/s =》 转一圈需要花费8ms
平均寻道时间:机械手机转到数据所在磁道需要花费的时间,受限于物理工艺水平,
目前机械盘可以达到的是5ms
平均延迟时间:转半圈需要花费4ms,受限于硬盘的转速
IO延迟 = 平均寻道时间 + 平均延迟时间
优化程序运行效率的一个核心准则:能从内存取数据就不要从硬盘取