计算机硬件--整理

编程语言的作用及与操作系统和硬件的关系:

  作用:让计算机执行其命令

  关系:通过操作系统使编程语言更方便的使用硬件资源

应用程序--操作系统--硬件:

  应用程序:用户使用的能使硬件行使特定功能的软件

  操作系统:为用户管理硬件资源的软件程序

  硬件:硬件的功能是输入并存储程序和数据,以及执行程序把数据加工成可以利用的形式

CPU--内存--磁盘:

  CPU:运算处理

  内存:为CPU提供快速数据读取的容器

  磁盘:存储数据

CPU与寄存器,内核态与用户态及如何切换

  CPU:取指令--解码--执行

  寄存器:存储重要的临时数据

  用户态与内核态切换:由于处于用户态的应用程序没有权限访问硬件,要访问硬件时,操作系统会使CPU切换为具有访问硬件权限的内核态来访问硬件,访问结束后再切换为

  用户态继续应用程序的运行

存储器系列,L1缓存,L2缓存,内存(RAM),EEPROM和闪存,BIOS与CMOS电池

  储存器:名称    响应时间  容量

      寄存器    1ns    <1KB

      高速缓存   2ns    4MB

      内存     10ns    2G

      硬盘     10ms    1TB

      磁带     100s    0.8TB(便宜)

  L1缓存:与CPU材质相同,读取速度非常快,容量极低,断电数据消失

  L2缓存:在CPU内部或与CPU相邻,读取速度很快,容量比L1大一些,断电数据消失

  内存(RAM):应用程序(系统)的文件都会加载到其中共CPU读取,速度相对L2慢,容量很大,断电数据消失

  EEPROM:电可擦除可编程只读储存器

  闪存:速度在内存与硬盘之间,可读写,次数过多会损坏

  BIOS:基础输入输出系统,为电脑开机时选择硬盘引导等

  CMOS+电池:CMOS为易失的(断电就没)储存介质,用于保存当前时间和日期,由于耗电非常低,用电池可以一直供电N年

磁盘结构,平均寻道时间,平均延迟时间,虚拟内存与MMU:

  硬盘结构:主要有盘面,磁头,轴,电机等组成

  平均寻道时间:从一个柱面移动到与其相邻的柱面的时间

  平均延时时间:磁头在正确的磁道上移动到数据所在的扇区所用的时间

  虚拟内存:帮助RAM在存储不下时辅助存储的一种技术,非必要,速度取决于硬盘速度

  MMU:CPU的一个部件,储存管理单元,可快速的映射内存地址

磁带:

  在相同成本下,比硬盘有更大的存储容量,储存速度慢,一般用于备份

设备驱动与控制器:

  设备驱动:使硬件设备能在操作系统下正常运行应用程序,一般硬件厂商提供

  控制器:CPU不是唯一的智能设备,每个硬件都有各自的状态寄存器,这些寄存器用来启动、停止、初始化设备以及对设备进行诊断

总线与南桥和北桥:

  总线:CPU、内存以及I/O设备都由一条系统总线(bus)连接起来并通过总线与其他设备通信(如下图)

                    

  

  北桥即PCI桥:连接高速设备

  南桥即ISA桥:连接慢速设备(如下图)

                      

操作系统的启动流程:

  BIOS--MBR--(bootloader)GRUB--Kernel

  BIOS:基础输入输出系统,开机先执行,选择启动硬件顺序等

  MBR:硬盘的第一个扇区(446引导信息,64分区信息,2字节标志信息)

  GRUB:允许用户在计算机内拥有多个操作系统,多操作系统启动程序

  Kernel:启动选择的系统内核,系统启动

应用程序的启动流程:

  PATH--APP--RAM--CPU--硬件

  PATH:让系统找到运行应用的文件路径

  APP:执行APP

  RAM:将APP的文件导入计算机内存中

  CPU:掉指令--解码--执行,若应用需要调用硬件资源,CPU会从用户态切换内核态来调用系统资源后,再切换成用户态来处理应用软件

  硬件:将运行结果反映在硬件上(显示器,音响等)

参考:http://www.cnblogs.com/linhaifeng/p/6523843.html

时间: 2024-08-27 10:38:42

计算机硬件--整理的相关文章

计算机硬件知识整理

计算机硬件知识整理 一.编程语言的作用 编程语言,就是让计算机为解决某个问题,而使用某种程序设计语言编写程序代码,并最终得到相应结果的过程.为了使计算机能够理解人的意图,人类就必须将需解决的问题的思路通过计算机能够理解的形式告诉计算机,这种人和计算机之间交流的过程就是编程. 目前的主要编程语言有,Java, C, C++, Python, PHP, Pearl等. 二. 编程语言的作用及与操作系统和硬件的关系 操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件的计

关于计算机硬件以及操作系统的内容整理

1.什么是编程语言,什么是编程,为什么要编程. 编程语言顾名思义就是一种语言,一种程序员与计算机沟通的语言. 编程就是将程序员想要实现的操作通过编程语言写成文件的形式来交给计算机执行. 要编程是因为人想通过计算机来是实现人想要实现的操作,解放出人,通过计算机来代替人来工作. 2.计算机硬件组成部分: 1控制器:负责控制计算机硬件的运行. 2运算器:负责计算机的逻辑运算与数学运算. 3存储器:又称为I/O设备 主要负责存储文件 内存(内存条):相当于人的短期记忆, 优点:读取速度快, 缺点:断电内

&lt;汇编语言系列&gt;计算机硬件系统与汇编

寒假时,有幸拜读了卡内基-梅隆大学(CMU)的Randal E.Bryant 和 David R.O'Hallaron的名著——深入理解计算机系统(Computer System: A Programmer's Perspective).这本书是来自CMU的一门叫做“计算机系统导论”的课程.让人遗憾的是,国内的大学貌似喜欢开这么一门课.计算机系统导论是个什么层次的课呢?它涉及到的知识有计算机组成原理,汇编语言,操作系统,编译原理,网络编程等.也就是说,它是一个涉及许多CS基础理论的一门课程,它的

(整理)ubuntu 的 相关知识(来自 鸟哥的私房菜)

1. Linux 文件权限概念 $ ls 察看文件的指令 $ ls -al 出所有的文件详细的权限与属性 (包含隐藏档,就是文件名第一个字符为『 . 』的文件) 在你第一次以root身份登入Linux时, 如果你输入上述指令后,应该有上列的几个东西,先解释一下上面七个字段个别的意思: 图2.1.1.文件属性的示意图 第一栏代表这个文件的类型与权限(permission): 这个地方最需要注意了!仔细看的话,你应该可以发现这一栏其实共有十个字符:(图2.1.1及图2.1.2内的权限并无关系) 图2

计算机基础系列一:计算机硬件 7月11日课堂随笔及作业

一.计算机硬件/操作系统/软件/网络 1.1软件的最终目的是控制硬件 1.2程序就是写的代码   就是为了更好的控制硬件    但是需要先控制    CPU 硬盘等硬件 1.3学习python语言的目的是为了写软件    python的单词就是关键词            模仿就是多练习熟练度 1.4 cpu主要关键功能就是计算(相当于人脑计算)   条件成立下的逻辑运算      人的数据(1+2)需要转化为电脑识别的指令 1.4.1  取指令(就是从内存里拿数据)->解码->执行 1.5 

Linux基本知识整理(一)

趁着这几日找工作,把一些知识简单的整理一下,形成逻辑,内化吸收,真正做到随手可写,随时可用,真正的成为骨子里的东西而不是会"用",而不会"写"!细想一下,还真的是命令虽然简单,但有时真的让你立即去执行的时候,还是会出现卡顿的.纯个人观点,如果有一些不恰当地方或者明显错误的地方希望大家指正,有些东西当然借鉴的,若有涉及到版权问题,请及时与本人联系,我将立即删除. 对Linux有一定了解的人想必都应该知道,尽管通常我们将Linux内核和GNU工具链的结合体称为Linux

linux需要整理 --学习笔记一二三四

何为操作系统?按照自己的理解,操作系统就类似一个平台,上面可以运行各种应用程序,向下可以屏蔽各种硬件差异对用户带来的影响,是用户与计算机硬件系统之间的接口. 看看<计算机操作系统>中对操作系统是怎么定义的: OS作为用户与计算机硬件系统之间的接口: OS作为计算机系统资源的管理者: OS实现了对计算机资源的抽象: OS是铺设在计算机硬件上的多层系统软件,它们不仅增强了系统的功能,而且还隐藏了对硬件的操作细节,由它们实现了对计算机硬件操作的多个层次的抽象. 多用户多任务操作系统的含义是:允许多个

笔记整理——C语言-http-1

http 传输原理及格式 - friping - ITeye技术网站 - Google Chrome (2013/4/1 14:02:36) http 传输原理及格式 博客分类: 其他 应用服务器浏览器网络协议Web网络应用                    HTTP是Web协议集中的重要协议,它是从客户机/服务器模型发展起来的.客户机/服务器是运行一对相互通信的程序,客户与服务器连接时,首先,向服务器提出请求,服务器根据客户的请求,完成处理并给出响应.浏览器就是与Web服务器产生连接的客户

WPF笔记整理 - Bitmap和BitmapImage

项目中有图片处理的逻辑,因此要用到Bitmap.而WPF加载的一般都是BitmapImage.这里就需要将BitmapImage转成Bitmap 1. 图片的路径要用这样的,假设图片在project下的Images目录,文件名XXImage.png. pack://application:,,,/xxx;component/Images/XXImage.png 2. 代码: Bitmap bmp = null; var image = new BitmapImage(new Uri(this.X