硬件的组成以及操作系统













计算机组件

核心设备

1、加法器: 进行二进制运算(利用针脚的有无电)。采用线路复用(给一个控制位,告诉你什么时候输入的是指令,什么时候是数据,即是什么时候是加数,什么时候是被加数,什么时候是输出结果)。

2、寄存器: 因为加法器的线路复用,被加数是从一个线路进来,加数用从同一个线路进来,被加数就会被覆盖,所以要把加数和被加数都暂时存放在寄存器中,以便于用于计算。

3、控制器:(1)从内存中接收控制指令

(2)控制加法器进行什么运算,控制加法器从内存的哪个地方读取和存放数据。

4、ROM: 开机时,通过硬件逻辑的方式,把ROM里面的信息直接映射到内存最开始的那一段(用于上电自检)。

5、内存: 存放运算数据及控制指令。

I/O设备

1、硬盘(即是输入也是输出设备): 由于内存断电数据就不存在的特性,要求有个永久存放数据的设备。

2、可编程中断控制器:  与cpu的针脚相连。利用interrupt机制让cpu知道是哪一个I/O设备输入的设备。(用中断向量的方式表示不同的设备)。

外注:机制:1、pull(轮循机制):cpu不时地查看

2、interrupt(中断机制):通知,让cpu停下来看看

总线

北桥:高速总线控制器,和cpu相连,和南桥相连。一般连接VGA芯片,内存。

南桥:一般连接I/O设备。

内注:有一些硬件厂商提供I/O设备直接和北桥相连的机器,给一些I/O读写特别高的用户,配置高速I/O设备(固态硬盘)(总线速度快,硬件速度自然也要快)。

缓存

集成在cpu中

寄存器 > 一级缓存 > 二级缓存 > 内存

寄存器可以和cpu相同频率工作,其次是一级缓存,再是二级缓存,再是内存。

利用程序的局部性原理:(1)时间:刚刚访问过的数据,一会又要访问相同的数据。

(2)空间:刚刚访问了的数据,离这个数据非常近的数据马上就要被访问到,已经都放入缓存中,就不用去内存中找了。

所以缓存,提高了计算机的效率。

外注:计算机的调优就是调节内存的数据排列,cpu怎么运行程序。

计算机的速度(HZ)即是运算器(加法器)针脚开关的速度。













操作系统

计算机语言

低级语言:(1)机器语言:(10101010)

(2)微码(汇编语言)(只是把机器语言用单词来表示)

cpu的指令都是通过针脚的有无通电来完成的,所以不同厂家和型号的cpu机器语言都有区别,同样的微码(汇编语言)也都不一样。用它们编辑的程序都是不可移植的。

API:(1)在不同类型的cpu上使用汇编语言开发,而写出来具有相同功能的程序,这个程序是没有执行入口,不能自动运行,给上层程序调用执行(高级语言程序编写就是基于API编写的),这样就可以让程序不用再考虑底层芯片的类型了。所以说API(库)是一种虚拟设备。

(2)用软件的方式,把底层不同类型芯片的相同功能抽象出来,让上层的程序具有相同的环境。

注:越高级的语言编写的程序月浪费性能

操作系统的产生和概念(kernel)

产生:

批处理的系统的cpu利用效率太低了,因为一个一个运行程序(job1$$$job2$$$$job3$$$job4),I/O的速度大大限制了cpu运行的速度。

使用多任务的方式来解决这个问题(kernel就是这个控制软件)。

1.对cpu进行时间切片,由kernel来协调(程序员编写的程序就不用考虑cpu切片方面的问题,和原来一样编写程序)。

2.对内存进行分段,每一段都有自己的编制(0,1,2,3,4),由kernel协调(程序员不用考虑内存分段的问题,和原来一样编写程序)。

3.内存虚拟地址空间(根据自己是多少位系统),让程序有多少G内存,而不根据物理内存,程序员就不用考虑实际内存的物理实际情况了。

定义:

kernel是运行在硬件上,只负责管理硬件资源,不负责具体工作,对cpu进行分片,内存分段,并且它们之间完成协调,还负责程序启动,终止,硬件资源回收,程序的切换。

注:运行中的程序叫做进程。

system calls


系统调用接口(通常称为syscalls),由kernel所提供,是kernel与上层应用程序进行交互通信的唯一接口。任何程序必须通过操作系统才能和硬件打交道。

不同的kernel提供的system calls各不相同。

system call 一个或者多个封装成API(库),即使把相同的功能抽象出来。(结合上面的API概念)。程序程序员可以调用API运行,也可以直接调用system call来编程。

所以如果一个程序是全调用API来编程的,只要不同kernel(操作系统)的API(库)相同,程序(似乎)就可以在不同的kernel(操作系统)上移植。

时间: 2024-10-21 00:57:37

硬件的组成以及操作系统的相关文章

db-server规范化配置模板一一硬件、文件系统、操作系统

(从底层到上层的优化) 一.存储层的优化: 使用RAID 1+0,不使用RAID 5/或RAID 6 raid磁盘使用介意8块盘为一组lun. 切忌跑数据库服务器禁用liunx的软lvm.(严重影响性能) 阵列卡配备CACHE及BBU模块,作为写CACHE的基础支撑 注意:BBU:是阵列卡cache的供电模块,里面是多个电池组成的电池组.     设置写策略为WB,或者FORCE WB,千万别用WT策略 1.wb = write back: 从os提交io写请求到磁盘里,首先会传到阵列卡里,阵列

无操作系统与有操作系统时硬件、驱动和应用软件的关系

1.无操作系统时硬件.驱动和应用软件的关系 在没有操作系统的情况下,设备驱动的接口直接交给应用软件工程师,应用软件没有跨越任何层次 就直接访问了设备驱动的接口. 2.有操作系统时,硬件.驱动.操作系统和应用软件的关系 当系统中包含操作系统后,我们需要把驱动程序融合到内核中,为了实现这种融合,必须在所有设备的驱动中 设计面向操作系统内核的接口,这样的接口是由操作系统规定的,对一类设备而言结构一致,独立于具体的设备. 由此,当系统中存在操作系统时,驱动变成了连接硬件和内核的桥梁. 为什么要使用操作系

并行化的世界--分布式硬件和分布式操作系统

当cpu的运行速度达到极限后,这个世界极其需要分布式硬件,和分布式操作系统. 什么教分布式硬件呢?就是说,cpu(在分布式系统,cpu这个东西应该会改名字,叫计算核心,可能更好些,但是为了大家有一个理解的共同背景,暂时还叫cpu)可以无限扩展的.cpu怎么能无限扩展呢?当然可以,当今互联网中的主机数量不是在无限扩展吗? 借用互联网的思想,我们完全可以把互联网放到主机里面!让主机内的硬件链接成一个网络,那自然可以让cpu无限扩展了(前提是,只要你有个可以无限大的机箱). 把互联网放进机箱中,让cp

工业防火墙架构与技术【第二节:硬件架构①】

1.3.   工控防火墙的体系架构 那么工控防火墙是如何设计来支撑其部署到工业生产环境中的?这就需要我们了解工控防火墙的架构,这包括两个方面:软件和硬件两部分.也就是防火墙运行在什么软件系统上以及防火墙安装的硬件平台. 软件和硬件架构是防火墙的骨骼,它决定了防火墙整体的工作水平和性能.一般而言,我们可以把常见的防火墙分为基于硬件防火墙.基于虚拟化架构的防火墙和基于软件的防火墙三类. l  基于硬件的防火墙在硬件方面一般采用了主流的三种架构:X86.ASIC和NP.ASIC和NP是专门设计的实现防

0909学习操作系统

正式步入了大三的学习过程中了,在本学期我们就要学到一门相当重要的课程,就是操作系统.在我的印象中,我觉得生活中电子设备都有一个操作系统.操作系统是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行.所以在我看来,操作系统是计算机和其他软件或硬件最基本的一个结构.想要自己实现一个软件或硬件的成功运行,则必须学好操作系统这一门课程. 在我们现在看到的很多软件,例如财务系统,网上购票等等,都离不开操作系统.所以我们必须要学

计算机基础系列之何为操作系统

what's the 操作系统? 首先,我们要知道,为什么要有操作系统.现代的计算机系统主要是由一个或者多个处理器,主存.硬盘.键盘.鼠标.显示器.打印机.网络接口及其他输入输出设备组成.现代计算机的组成部分极其复杂,我们不可能全部了解完再去写开发,所以就需要用到操作系统.程序员只需要做自己的本职开发工作,应用软件直接使用操作系统提供的功能来间接使用硬件. 操作系统位于计算机硬件与应用软件之间,本质也是一个软件.操作系统由操作系统的内核(运行于内核态,管理硬件资源)以及系统调用(运行于用户态,为

操作系统--设备管理

设备管理概述: 设备管理的主要功能: 设备分配 设备映射 设备驱动 I/O缓冲区的管理 设备分配 多道程序系统中,设备不允许用户直接使用,而是由操作系统统一调度和控制.设备分配功能是设备管理的基本任务.设备分配程序按照一定的策略,为申请设备的用户程序分配设备,记录设备的使用情况. 设备映射 逻辑设备和物理设备概念: 设备映射概念:在软件运行期间,操作系统的设备管理程序必须将该应用软件对逻辑设备的引用和转换成对相关物理设备的引用.这种从逻辑设备到物理设备的映射功能,简称为设备映射功能. 设备驱动

操作系统简介

操作系统简介 阅读目录 一 为什么要有操作系统 二 本节目标 三 什么是操作系统 四 操作系统与普通软件的区别 五 操作系统发展史 六 本节重点知识总结 一:操作系统的俩大作用 二:多路复用 回到顶部 一 为什么要有操作系统 现代的计算机系统主要是由一个或者多个处理器,主存,硬盘,键盘,鼠标,显示器,打印机,网络接口及其他输入输出设备组成. 一般而言,现代计算机系统是一个复杂的系统.如果每位应用程序员都必须掌握该系统所有的细节,那就不可能再编写代码了(严重影响了程序员的开发效率:全部掌握这些细节

物联网开源操作系统,你了解多少?

物联网.开源.操作系统是目前IT业界的热门词汇,也正是这三个词汇构成了物联网开源操作系统.那么,对于物联网开源操作系统,你了解多少呢? 我们今天带大家一起走近物联网操作系统,同时介绍10款经典的物联网操作系统. 从物联网说起 物联网,英文名:Internet of Things,简称:IoT,是互联网概念的一种延伸,广义是指各种物理对象之间的联网,简单的说,就是"物物互联". "物"在物联网中,可以是各种各样的设备,例如监测心脏功能的植入物.监测农场动物的生物芯片.