python学习之计算机基础详解
Posted leilijian
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习之计算机基础详解相关的知识,希望对你有一定的参考价值。
1、CPU详解
·型号(x86-64)
? x86是指的CPU的型号,这种型号的CPU采用的是x86架构。
? 64是指CPU一次能够从内存中接受64位二进制数据;CPU具有向下兼容性,64位的CPU既能运行32位的程序也能运行64位的程序。
·内核态与用户态
? CPU最核心的部分为控制其他硬件的指令集,指令集分为控制指令集和运算指令集;
当计算机运行操作系统的代码时,所有指令集都开放,此时称为CPU的内核态;
当计算机运行应用程序的代码时,只开放运算相关的指令集,此时称为CPU的用户态。
? 应用程序的运行必然涉及到计算机硬件的操作,那就必须由用户态切换到内核态下才能实现,所以计算机在工作时频繁发生内核态和用户态之间的切换。
·多线程与多核芯片
? 2核4线程:2核代表有2个CPU,4线程代表每个CPU都有2个线程,伪4核;
? CPU性能比2核强,但是比4核差。
? 4核8线程:4核代表有4个CPU,8线程代表每个CPU都有2个线程,伪8核;
? CPU性能比4核强,但是比8核差。
2、存储器
RAM:内存,断电后数据丢失
ROM:“只读内存”,断电后数据不丢失;
? 存放计算机厂商写在计算机上的一段核心程序>>>>>Bios
CMOS:存取速度慢,断电数据丢失,耗电量极低;
靠主板的电池供电,里面存放着系统时间,BIOS的设置信息等数据。
硬盘:
? 机械硬盘:磁盘
? 磁道:一圈数据,对应着一串二进制(1bit代表一个二进制位)
? 8bit比特位=1Bytes字节
? 1024Bytes=1KB
? 1024KB=1MB
? 1024MB=1GB
? 1024GB=1TB
? 扇区:
? 一个扇区通常为512Bytes
? 站在硬盘的角度,一次性读写数据的最小单位为扇区
? 操作系统一次性读写的单位是一个block块>>>>>8扇区的大小=4096Bytes
? 柱面:
? 硬盘通常是几张磁盘叠在一起,所有磁盘的一圈数据可以看成圆柱体,即为柱面
机械硬盘:
? 内由闪存芯片构成,存取速度快,价格高,通常作为系统盘使用。
·I/O延迟
? IO延迟 = 平均寻道时间 + 平均延迟时间
? 平均寻道时间:机械手臂转到数据所在的磁道需要花费的时间,受限于物理工艺水平;
? 目前机械硬盘可以达到的是5ms。
? 平均延迟时间:磁盘旋转半圈需要花费的时间,受限于硬盘的转速;
? 如果一块硬盘的转速为7200转/min,则它的平均延迟时间为4ms。
? 平均寻道时间取决于物理水平,不会有太大的差异;而平均延迟时间受限于硬盘的转速,因此I/O延迟主要是由平均延迟时间决定,即由硬盘的转速决定。
? 优化程序运行效率的核心法则:能从内存取数据,就不要从硬盘取(尽量不从硬盘取数据)。
? IO设备 = 设备的控制 + 设备本身,设备的控制是通过设备的控制器(一组芯片)来实现;
? 操作系统---->驱动程序---->设备的控制器---->硬盘
虚拟内存:当内存不够时,计算机会从硬盘中拿出一部分空间来当内存使用,以缓解内存的紧张。
3、总线
? 南桥:连接硬盘、USB等低速存储器
? 北桥:连接CPU、内存等高速存储器
4、操作系统的启动流程
BIOS介绍:
? BIOS:basic input output system
? BIOS被写入到ROM中
裸机:
? CMOS充当硬盘
? ROM充当内存,存放BIOS系统
? CPU
操作系统的启动流程:
? 1)计算机通电
? 2)启动BIOS系统,对CPU、内存、硬盘等设备进行检测;
? 3)BIOS从CMOS中读取设置信息,选择启动设备;
? 4)从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446位引导信息,后64为分区信息,最后两个为标志位);
? 5)根据分区信息读入bootloader启动加载模块,启动操作系统;
? 6)然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户安装设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。
5、应用程序的启动流程
? 1)双击exe快捷方式---->文件的绝对路径,就是在告诉操作系统,我有一个应用程序要执行,应用程序的文件路径是(exe文件的绝对路径)
? 2)操作系统会根据文件路径找到exe程序在硬盘的位置,控制其代码从硬盘加载到内存
? 3)然后控制CPU从内存中读取刚刚读入内存的应用程序的代码执行,应用程序完成启动
以上是关于python学习之计算机基础详解的主要内容,如果未能解决你的问题,请参考以下文章