一直想学习Linux,但计划时不时被耽误,现在开始,决定每天开始学习Linux。学习从最简单的开始,一步步,不能将最简单的东西忽略。

1、计算机硬件的五大单元

计算机分为三部分:输入单元,中央处理器即CPU,输出单元;其中整台主机的重点在于CPU,它是一个具有特定功能的芯片,里面含有微指令集,CPU内又可分为算术逻辑单元和控制单元。

综上,计算机硬件可分为:输入单元,输出单元,CPU内部的控制单元、算术逻辑单元,和内存。

上图中,系统单元指的是计算机主机内的主要组件,重点在于CPU与内存。特别要看的是实线部分的传输方向,基本上数据都是流经过内存再转出去。至于数据会流进还是流出内存,则是CPU所发布的控制命令。而CPU实际要处理的数据则完全来自于内存

2、CPU种类

目前常见的两种主要CPU种类有:精简指令集(RISC)系统和复杂指令集(CISC)系统。下面谈谈这两种系统的区别:

精简指令集(Reduced Instruction Set Computer, RISC):

  RISC中,微指令集较为简单,每个指令的执行时间都很短,完成的操作也很单纯,指令的执行性能较佳;但若要做复杂的事情,就要由多个指令来完成。常见的RISC微指令集CPU主要有Sun公司的SPARC系列、IBM公司的Power Architecture(包括PowerPC)系列与ARM系列等。

  在应用方面,SPARC架构的计算机常用于学术领域的大型工作站中,包括银行金融体系的主要服务器也都有这类的计算机架构;而常用手机、PDA、导航系统及网络设备等大多使用ARM架构的CPU。目前世界上使用范围最广的CPU是ARM架构。

复杂指令集(Complex Instruction Set Computer,CISC):

  CISC的微指令集中,每个小指令可以执行一些较低阶的硬件操作,指令数目多而复杂,且每条指令的长度不相同。常见的CISC微指令集CPU主要有AMD、Intel、VIA等x86架构的CPU。

  个人计算机一般被称为x86架构的计算机。之所以称为x86架构,因为最早的哪个Intel发展出来的CPU代号称为8086,后来此架构发展为80286等。

  • 对于目前两大主流的CPU,在架构上的主要区别:

  两者是不兼容的,如果想了解这两大CPU在架构上的差异,首先要了解计算机主板上的芯片组。

  芯片组通常分为两个桥接器来控制各组件的通信,分别是:北桥负责连接速度较快的CPU、内存与显卡等组件;南桥负责连接速度较慢的周边接口,包括硬盘、USB、网卡等。通常,Intel的架构采用上述常见方式,而AMD为了加速CPU与内存的数据通信,将内存控制组件集成到CPU当中,来代替北桥,理论上这样可以加速CPU与内存的传输速度。这即为两大CPU的区别。

学习Linux——计算机概论的更多相关文章

  1. linux 计算机概论 Linux介绍

    CPU: CPU内部可以分为两个主要单元:算数逻辑单元和控制单元. 算数逻辑单元主要用于程序运算和逻辑判断,控制单元主要用于协调各个组件和各单元的工作. CPU基本可以分为两种: 精简指令集和复杂指令 ...

  2. LINUX内核分析第一周学习总结——计算机是如何工作的

    LINUX内核分析第一周学习总结——计算机是如何工作的 张忻(原创作品转载请注明出处) <Linux内核分析>MOOC课程http://mooc.study.163.com/course/ ...

  3. Linux第一周学习总结——计算机是如何工作的

    第一周学习总结--计算机是如何工作的 作者:刘浩晨 一.存储程序计算机工作模型 冯诺依曼体系结构:核心思想为存储程序计算机.两个层面: (1)硬件的角度(计算机主板):一个CPU,一块内存,之间有总线 ...

  4. Linux系统的理解及学习Linux内核的心得

    作业列表      (点击作业跳转) linux内核分析作业:以一简单C程序为例,分析汇编代码理解计算机如何工作 linux内核分析作业:操作系统是如何工作的进行:完成一个简单的时间片轮转多道程序内核 ...

  5. 忠告初学者学习Linux系统的8点建议

    导读 新手或者说即将要入坑的小伙伴们,常常在QQ群或者在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的.例如:如何给添加的用户归属用户组,复制整个文件到另一个目录下面,磁盘合理划分,甚至 ...

  6. 总结4点对学习Linux有帮助的建议(纯干货)

    学习需要足够的毅力和耐心 有些人把Linux运维看作一项冗长而枯燥的工作:有些人把linux运维看作一项得力的工具.如果是前者建议还是改变一下认识,不然不建议入门这行.毕竟linux运维工作是对人的毅 ...

  7. 总结四条对学习Linux系统有帮助的方法

    网络是一个很神奇的东西,现代人的生活离不开网络,网络已深入人们的工作,生活,娱乐等方方面面.网络之所以无处不在,是因为它提供了诸多的网络服务,所以网络服务是网络的灵魂. 互联网上的各种网络服务是架构在 ...

  8. 学习linux/unix编程方法的建议(转)

    假设你是计算机科班出身,计算机系的基本课程如数据结构.操作系统.体系结构.编译原理.计算机网络你全修过 我想大概可以分为4个阶段,水平从低到高从安装使用=>linux常用命令=>linux ...

  9. 献给初学者:谈谈如何学习Linux操作系统

    本文出自 “技术成就梦想” 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式 ...

随机推荐

  1. 四个使用this的典型应用

    (1)在html元素事件属性中使用,如 <input type=”button” onclick=”showInfo(this);” value=”点击一下”/> (2)构造函数 func ...

  2. sdut 2605 A^X mod P

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2605 这个题卡的是优化,直观解法是在求x^y时 ...

  3. Drag+Drop和MouseClick

    项目中的一个树形结节,既要响应拖拽事件.又要响应点击事件.实现的时候没多想,依次实现了tree_MouseClick.tree_MouseDown.tree_MouseMove事件.出现的Bug是,偶 ...

  4. superobject中 JavaToDelphiDateTime的使用

    procedure TForm1.FormCreate(Sender: TObject); var n: TDateTime; i64: Int64; s: Integer; begin Memo1. ...

  5. 数据结构-AVL树

    实现: #ifndef AVL_TREE_H #define AVL_TREE_H #include "dsexceptions.h" #include <iostream& ...

  6. flask剖析

    1.为何只要通过import request,就能拿到对应的request呢?怎么解决区分请求,区分线程的问题? 简而言之,就是通过拿栈顶对象就表示是当前活动的对象 但对于多线程,由于栈的数据结构是 ...

  7. sql遍历树

    oracle有直接的sql来遍历一颗树的子节点和父节点 遍历一个节点的所有子节点(classid的值就是该节点的值) select *  from organization_ a start with ...

  8. 手机app常见bug积累

    经过一年的测试工作,以下是手机APP比较容易出现的错误.之后如果发现了还会继续添加,修改.1.翻页手机客户端,内容超过一页时,上拉加载更多内容,加载错误(容易出现数据重复,图片和文章不匹配,图片重复加 ...

  9. JS中javascript:void(0)真正含义

    对于下面的代码,其中void(0)的含义是什么? <a href="javascript:Test();void(0);">hello</a> 其实,Jav ...

  10. Git的常用命令的使用方法和解释

    我们常用的git命令: add        Add file contents to the index(将文件添加到暂存区)  用法: 保存某个文件到暂缓区:git add 文件名 保存当前路径的 ...