首页 > temp > python入门教程 >
-
计算机硬件基础知识普及,操作系统,编程语言分类
一、计算机硬件基础知识普及(***)
1.存储器:
ROM ==》内存:只读内存,出厂数据,不可更改,存放BIOS(管理基本输入输出运行)操作系统
CMOS==》‘硬盘’:易失性存储器,断电数据丢失,但耗电量极低
用来运行BIOS程序:
(1)CPU
(2)ROM
(3)CMOS
RAM主存:易失性存储器,断电数据消失
EEPROM(电可擦除可编程ROM)和 闪存(flash memory) 非易失性存储器,可以擦除和重写
ps:为何将内存称之为主存:
CPU是从内存中取程序来翻译成CPU内部自己的指令集去运行。输入输出单元,外部存储装置,都要通过内存来获取,内存是所有存取行为的中转站,主要的存储设备,称之为主存。
2.硬盘:
机械磁盘:盘面(通常有2张),磁头,机械手臂,**磁道**,**柱面**,**扇区**(后三重点了解)
每个磁头可以读取一段换新区域,称为磁道
把一个戈丁手臂位置上所以的磁道合起来,组成一个柱面
每个磁道划成若干扇区,扇区典型的值是512字节
数据都存放于一段一段的扇区,即磁道这个圆圈的一小段圆圈,从磁盘读取一段数据需要经历寻道时间和延迟时间
重点:为何机械硬盘读取速度慢? 慢在找数据的过程
7200转/min
转一圈花费:8ms
平均寻道时间:5ms
平均延迟时间:4ms
固态硬盘:规避了机械硬盘的寻找数据的时间
平均寻道时间(5ms):机械手臂从一个柱面随机移动到相邻的柱面的时间成为寻到时间,找到了磁道就以为着招到了数据所在的那个圈圈,但是还不知道数据具体这个圆圈的具体位置
平均延迟时间(4ms):机械臂到达正确的磁道之后还必须等待旋转到数据所在的扇区下,这段时间成为延迟时间
IO延迟时间=平均寻到时间(5s)+平均延迟时间(4s)
3.虚拟内存(swap分区)
内存满了的时候,用虚拟内存,因为内存满了后,会影响程序
当内存耗尽时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张
windows即使物理内存没有用完也会去用到虚拟内存,而Linux不一样 Linux只有当物理内存用完的时候才会去动用虚拟内存(即swap分区)
4.IO设备分为2部分:设备控制器、设备本身
5.总线
北桥即PCI桥:连接高速设备
南桥即ISA桥:连接慢速设备
6.计算机启动流程
(1)计算机加电
(2)BIOS开始运行,检测硬件:cpu、内存、硬盘等
(3)BIOS读取CMOS存储器中的参数,选择启动设备
(4)从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)
(5)根据分区信息读入bootloader启动装载模块,启动操作系统
(6)然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。然后初始有关的表格(如进程表),穿件需要的进程,并在每个终端上启动登录程序或GUI
二、操作系统(*****)
1.平台=计算机硬件+操作系统
跨平台性:程序能否在不同平台运行
2.什么是操作系统:
操作系统是一个协调、管理、控制计算机硬件资源与应用软件资源的一个控制程序。
3.计算机体系的三层结构:(******)
应用程序/用户
操作系统(windows、mac、linux(是个系列代号,稳定性高) 文件 可打开65535个
计算机硬件(cpu、内存、硬盘) 硬盘
三、编程语言分类(***)
1.机器语言:直接用二进制指令编写程序
优点:运行效率高
缺点:开发效率低;二进制指令太难记忆;实现一个简单的功能都需要很多步才能完成
2.汇编语言:用英文标签取代二进制指令去编写程序
优点:运行效率高,但肯定低于机器语言;解决了机器语言二进制指令难记的问题
缺点:开发效率仍然比较低
3.高级语言:用人类能理解的表达方式去编写程序,计算机无法直接理解,需要翻译
按照翻译方式的不同,高级语言又分为:
编译型:翻译一次得到可执行结果,下次直接拿着现成的结果运行就好了,不需要再用编译器翻译了
代表:C GO
翻译工具:编译器
解释型:每次执行程序都离不开解释型的翻译
代表:py shell
翻译工具:解释器
————————————————————————————————————————————————
执行效率:机器语言>汇编语言>高级语言(编译型>解释型)
开发效率:机器语言<汇编语言<高级语言
出处:https://www.cnblogs.com/guojieying/p/13230982.html