一:计算机的基本组成

1.计算机由输入单元、控制单元、算法逻辑单元、输出单元、存储单元,五大单元组成

二:概念篇

CPU:中央处理器,其内含有指令集(取码-解码-执行的过程)

CPU同一时刻只能干一件事情,从内存取出指令码解码执行。

硬盘:用于存储信息。分为机械式磁盘(基于磁)和固态硬盘(基于电)。

寄存器:因CPU运行速度快,而内存速度慢,未充分利用CPU效率而产生的,其空间小于内存,一般采用CPU材质。位于CPU内,

所有CPU内部都有一些用来保存关键变量和临时数据的寄存器。

虚拟内存:许多机器支持虚拟存储机制,以至于能够使计算机运行大于物理内存的程序,其方法就是将该程序暂时不需要运行的文件放置磁盘某个地方,这个地方成为虚拟内存。       (位于硬盘内,暂时保存运行数据,但速度慢)

编程语言:语言是用于一个事物与另一个事物联系的介质。 而计算机语言,则是人与计算机进行沟通的介质。

三:计算机基础

1.硬件系统 软件系统 操作系统三者之间的关系?/

计算机硬件主要包括CPU/内存/硬盘/键盘/鼠标等等设备。但是硬件不能完成计算机的操作与使用,此时我们需要借助操作系统。操作系统其实也是一道程序,写入了磁盘的第一个扇区,那么操作系统可以直接控制硬件系统吗?其实不能,我们需要借助BIOS系统(BIOS系统也是一个程序,用于启动硬件参数以及记录时间、日期,其数据处在CMOS芯片上,自带小电池,这也是为什么电脑关机后再重启时间依然准确的原因)。

2.CPU  内存 硬盘之间的关系?

CPU,即为中央处理器,其内含有微指令集。(取码-解码-执行的过程) 运算速度快

CPU分为两种模式,内核态(可完全访问整个硬件)与用户态(仅仅只能执行cpu整个指令集的一个子集,该子集中不包含操作硬件功能的部分)。

而程序的运行往往需要用到硬件,那么如何进行两种模式的切换呢? 用户必须使用系统调用系统调用陷入内核并调用操作系统,TRAP指令把用户态切换成内核态,并启用操作系统从而获得服务。简单理解:系统调用就是将用户态转化为内核态,将编程语言转化为机器语言,那么硬件就可以执行该程序了。

内存,暂时存贮数据,断电数据就会消失。比如:我们在运行程序,突然断电,再次重启需要重新启动该程序,而无法保存断电前程序的运行位置。  运行速度慢

硬盘,永久存储数据。分为固态硬盘与机械式硬盘(机械手臂、磁盘)。 运行速度慢,受限制与转速,转速越快则写入会更快。

程序的运行需要CPU的控制与处理,CPU运行的数据来源于内存,而内存的数据则来自于硬盘的写入。CPU不能直接读入硬盘里的数据!

3.存储系列

闪存:可读,可擦,可重写。 固态硬盘均为闪存芯片。

ROM:只读存储器,在工厂中就编辑完毕,不可再次修改。

L1缓存:即寄存器;因CPU运行速度快,而内存速度慢,未充分利用CPU效率而产生的,其空间小于内存,一般采用CPU材质。位于CPU内,

所有CPU内部都有一些用来保存关键变量和临时数据的寄存器。

高速缓存即L2缓存;

4.磁盘结构

扇区:磁盘划分为扇形的区域,其大小为512bytes.

磁盘读取的最小单位为1扇区,操作系统最小的读取单位为1block=8*512bytes=4kb

磁道:磁盘的读取由机械手臂完成,机械手臂在磁盘上画圈产生了磁道。

柱面: 数个叠加的磁盘形成柱面,而以不同的磁道形成的就是柱面。

分区其实就是按照柱面由圆心内及圆心外而划分的区域。例如windows系统的C/D/E/F盘的划分。

磁带:储存数据量大、但读写速度慢。可用于服务器的数据存储。

平均寻道时间 :机械手臂寻找储存相应信息磁道的时间

平均延迟时间:找到准备磁盘扇区延迟的时间

I/O设备:包括设备控制器以及设备本身。

控制器:位于接口处,接口连接的就是控制器,从操作系统接受命令。比如:U盘接口。

5.总线、南桥、北桥

总线:主板中连接各个设备的线路

南桥即ISA桥:连接慢速设备,例如:USB、鼠标

北桥即PCI桥:连接高速设备,例如:CPU/内存/寄存器

平均寻道时间:机械手臂寻找储存相应信息磁道的时间

平均延迟时间:找到准确磁盘扇区的时间

5.操作系统的启动流程找到准备磁盘扇区延迟的时间

1.启动电脑计算机电源开关

2.BIOS程序自动启动,检测硬件设备:CPU、硬盘、内存等。

3.BIOS从CMOS芯片中读取程序,启动相应设备

4.从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)

5.根据分区信息读入bootloader启动装载模块,启动操作系统

6.然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。然后初始有关的表格(如进程表),创建需要的进程,并在每个终端上启动登录程序或GUI

6.应用程序的启动流程

1.双击点开应用程序软件,桌面快捷方式(文件路径)

2.操作系统根据文件路径,从硬盘中调用到内存运行


总结与归纳:

1.操作系统

操作系统包括核心与开发接口。核心层是参考硬件规格写成的,所以同一个操作系统不能在不一样的硬件架构下执行。应用程序的开发则要参照该操作系统开发接口进行开发,才能够运行。

操作系统与硬件

操作系统不能单独驱动硬件,需要有驱动程序才能完成。驱动程序就是在用来向操作系统提供一个访问、使用硬件设备的接口。相当于“传令兵”。

操作系统---驱动程序----硬件设备

计算机基础part1的更多相关文章

  1. 计算机基础--Java中int char byte的关系

    计算机基础--Java中int char byte的关系 重要:一个汉字占用2byte,Java中用char(0-65535 Unicode16)型字符来存字(直接打印输出的话是字而非数字),当然要用 ...

  2. Java学习之计算机基础(一)

    阅读本文大概需要 4 分钟 想要开始学习Java开发,需要掌握一些必要的计算机基础.如果你是计算机专业的人或者已经学过类似的课程,可以跳过这篇文章的阅读.计算机基础课程有很多,小编在大学里学过的课程就 ...

  3. 计算机基础-Day1

    计算机基础-Day1 一.计算机基础 首先Python是一门编程语言 语言: 那什么是语言?语言就是一种事物与另一种事物沟通的介质. 所以说编程语言是程序员跟计算机沟通的介质,那么为什么要跟计算机沟通 ...

  4. python计算机基础-Day1

    计算机基础-Day1 一.计算机基础 首先Python是一门编程语言 语言: 那什么是语言?语言就是一种事物与另一种事物沟通的介质. 所以说编程语言是程序员跟计算机沟通的介质,那么为什么要跟计算机沟通 ...

  5. Python之旅_计算机基础入门

    一.计算机基础 1.Python是编程语言 语言:一种事物与另一种事物沟通的介质. 编程语言:程序员与计算机沟通的介质. 什么是编程:程序员用编程语言把自己的逻辑思想下来,编程的结果就是一堆文件. 为 ...

  6. 计算机基础,Python基础--变量以及简单的循环

    一.计算机基础 1.CPU 相当于人体的大脑,用于计算处理数据. 2.内存  用于存储数据,CPU从内存调用数据处理计算,运算速度很快. PS:问:既然在内存里的数据CPU运算速度快,为什么计算机不全 ...

  7. day01计算机基础

    今日内容 1.计算机初步认识 1.计算机认识 1. 计算机基础 1.1硬件:cpu/内存/硬盘/主板/网卡 1.2操作系统 linux:免费开源 windows mac 1.3解释器/编译器 补充:编 ...

  8. Java面试题 Web+EJB & Spring+数据结构& 算法&计算机基础

    六.Web 部分:(共题:基础40 道,基础37 道,中等难度3 道) 122.说出Servlet 的生命周期,并说出Servlet 和CGI 的区别? [基础] 答:Web 容器加载Servlet ...

  9. python note 01 计算机基础与变量

    1.计算机基础. 2.python历史. 宏观上:python2 与 python3 区别: python2 源码不标准,混乱,重复代码太多, python3 统一 标准,去除重复代码. 3.pyth ...

随机推荐

  1. d3选择全部子节点,不知道class和id

    https://github.com/d3/d3-selection/issues/63 selection.selectAll("*")

  2. QTableWidget自定义表头QHeaderView加全选复选框

    1         QTableWidget自定义表头QHeaderView加全选复选框 在使用QTableWidget时需要在表头添加全选复选框,但是默认的表头无法添加复选框,只能用图片画上去一个复 ...

  3. 使用Qpaint在图片上写文字

    开发过程中需要实现在图片上叠加文字,可以采用Qpaint在图片上写文字,然后将图片显示在上面.再将Qlabel加到Qwidget中.效果如下 //创建对象,加载图片 QPixmap pix; pix. ...

  4. Jedis与Lua脚本结合

    使用Lua脚本的好处    1.减少网络开销:可以将多个请求通过脚本的形式一次发送,减少网络时延和请求次数. 2.原子性的操作:Redis会将整个脚本作为一个整体执行,中间不会被其他命令插入.因此在编 ...

  5. 最大似然估计实例 | Fitting a Model by Maximum Likelihood (MLE)

    参考:Fitting a Model by Maximum Likelihood 最大似然估计是用于估计模型参数的,首先我们必须选定一个模型,然后比对有给定的数据集,然后构建一个联合概率函数,因为给定 ...

  6. 用C#实现多种方式播放Wav声音

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  7. Android--------内存泄露工具LeakCanary

    什么是内存泄露 一些对象有着有限的生命周期.当这些对象所要做的事情完成了,我们希望他们会被回收掉.但是如果有一系列对这个对象的引用,那么在我们期待这个对象生命周期结束的时候被收回的时候,它是不会被回收 ...

  8. 小程序点击事件改变样式(普通js鼠标点击事件)

    1.wxml中 <view class="column"> <view class="body-view {{num==1?'active':''}}& ...

  9. CentOS7 添加开机启动项

     centos6 加入开机启动:   vim /etc/rc.d/rc.local 注意命令不要出错,重启后生效   或者   centos 7 下: vim /lib/systemd/system/ ...

  10. Ugly Number leetcode java

    问题描述: Write a program to check whether a given number is an ugly number. Ugly numbers are positive n ...