计算机基础(1)
计算机基础知识详解
一.cpu详解
-
cpu的分类与指令集
-
x86-64 : x86指的是cpu的型号
- cpu具有向下兼容性, 64位的cpu既能运行32位的程序也能运行64位的程序
-
内核态和用户态
- 代表的是cpu的两种工作状态
- 内核态: 运行的程序是操作系统,可以操作计算机硬件
- 用户态: 运行的程序是应用程序,不能操作计算机硬件
- 内核态和用户态的转换
- 应用程序的运行必然涉及到计算机硬件的操作, 那就必须由用户态切换到内核态下才能实现,所有计算机的工作的时候频繁发生内核态和用户态的转换
- 代表的是cpu的两种工作状态
-
多线程和多核芯片
- 2核4线程: 2核代表有两个cpu,4线程指的是每个cpu都有两个线程=》假4核
- 4核8线程: 4核代表有4个cpu,8线程指的是每个cpu都有两个线程=》假8核
二.存储器
-
RAM: 内存
-
ROM: "只读内存" 存放计算机厂商写死计算机上的一段核心程序=>BIOS
-
CMOS: 存取速度慢, 断电数据丢失, 耗电量极地, 类似于硬盘
-
硬盘
- 机械硬盘: 磁盘(基于磁工作)
- 磁道: 一圈数据, 对应这一串二进制(1bit代表一个二进制位)
- 8bit比特位=1Bytes字节
1024Bytes=1KB
1024KB=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
- 8bit比特位=1Bytes字节
- 扇区:
- 一个扇区通过为512Bytes, 站在硬盘的角度,一次性读写数据的最小单位为扇区
- 操作系统一次性读写的单位是一个block块=>8扇区的大小=4096Bytes
- 柱面
- 磁道: 一圈数据, 对应这一串二进制(1bit代表一个二进制位)
- 固态硬盘: 速度块
- 机械硬盘: 磁盘(基于磁工作)
-
IO延迟
-
以7200转/min的机械硬盘为例, 120转/s, 1/120/s= 转一圈需要花费8ms
-
平均寻道时间: 机械手臂转到数据所在磁道所花费的时间, 受限于物理工艺水平, 目前机械硬盘可以达到的是5ms
-
平均延迟时间: 转半圈需要花费4ms, 受限于磁盘的转速
-
IO延迟= 平均寻道时间+ 平均延迟时间
-
优化程序运行效率的一个核心法则: 能操内存取数据, 就不要从硬盘中取
-
-
操作系统的启动流程
-
BIOS介绍:
- BIOS: Basic Input Output System 基本输入输出系统
- BIOS被写入ROM(只读内存)设备
-
裸机:
- cup
- ROM: 充当内存, 存放BIOS系统
- CMOS: 充当硬盘
-
操作系统的启动流程
- 1.计算机加电
- 2.BIOS开始运行,检测硬件:cpu、内存、硬盘等
- 3.BIOS读取CMOS存储器中的参数,选择启动设备
- 4.从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)
- 5.根据分区信息读入bootloader启动装载模块,启动操作系统
- 6.然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核
-
应用程序的启动流程
- 1、双击exe快捷方式--》exe文件的绝对路径,就是在告诉操作系统说:我有一个应用程序要执行,应用程序的文件路径是(exe文件的绝对路径)
- 2、操作系统会根据文件路径找到exe程序在硬盘的位置,控制其代码从硬盘加载到内存
- 3、然后控制cpu从内存中读取刚刚读入内存的应用程序的代码执行,应用程序完成启动
-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)