CPU:

CPU内部可以分为两个主要单元:算数逻辑单元和控制单元。

算数逻辑单元主要用于程序运算和逻辑判断,控制单元主要用于协调各个组件和各单元的工作。

CPU基本可以分为两种:

精简指令集和复杂指令集系统。

精简指令集:

每个指令都较为精简,执行时间比较短,完成的操作也比较简单。指令的性能较佳,但是要实现复杂的功能,需要多个指令来完成。常见的微指令集CPU有Sun公司的SPARC系列,IBM的Power Architecture系列和ARM系列。

我们经常使用的手机,交换机。路由器,导航设备的CPU基本都是ARM系列的。而SPARC常用于大型工作站中,如银行金融体系的主要服务器。

复杂指令集:

AMD、Intel等X86架构的CPU。

关于X86:因为Intel初期开发这个CPU的型号较8086,80286,80386,所以后来就叫X86架构。64位的X86又叫X86_64.

操作系统

操作系统内核(Kernel):操作系统内核用于管理CPU,内存,硬盘,网络,其他各种输入输出设备等的一组复杂程序。

系统调用(System Call):内核提供的调用内核功能的API。

内核功能:

  • 系统调用接口(就是上面的System Call)
  • 程序管理:进程管理 CPU调度
  • 内存管理:内存管理 虚拟内存 内存交换
  • 文件系统管理:文件系统的格式(如NTFS),输入输出。
  • 设备驱动

关于设备驱动:

  • 对于显卡,硬盘,网卡等,操作系统都需要驱动程序才能够使用该硬件。
  • 一般来说,操作系统提供接口,开发商按照接口制作他们的驱动程序。
  • 驱动程序又开发商提供,跟操作系统开发者无关。

linux

操作系统需要支持不同指令集的CPU,linux在刚开发的时候,只能驱动386相关的硬件。

window系统是开发在386架构之上的系统,早期的苹果系统是建立在IBM的Power Architecture基础上的,所以早期的苹果系统是无法安装Windows系统的。2006之后苹果使用了Intel的X86架构。

unix

unix是贝尔实验室的一个员工Thompson开发出来的,目的是满足自己的工作需求。第一版是以汇编语言编写的。然后在贝尔实验室内部广为流传,后来Thompson和伙伴Ritchie准备将unix以高级的语言重新编写,第一版使用了B语言(也是Thompson编写的),不过性能表现不太好,所以Ritchie改进并且精简了B语言,改写成了后来的C语言。然后以C语言重新编写了unix系统。

BSD是unix的基础上构建起来的,增加了很多工具软件和编译程序,是unix的重要分支。

GNU项目

GNU项目是Stallman成立的开源软件项目,在c的圈子,类似于java的apache。

GUN的license叫GPL。

GCC是一款c程序编译软件,是Stallman的编写的。全名叫GNU C Compailer。

Stallman创立GNU的一个重要目的就是为了开发一个自由的unix操作系统。因为当时unix操作系统已经有了版权的纠纷。

linux

芬兰人linux Torvalds利用GNU的bash工作环境以及GCC编译程序等自由软件,编写了linux的第一版。只支持386平台的操作系统内核。

后来经过一个虚拟团队的维护,才渐渐有了现在的linux。

distribution

linux kernel + Software + tools + Ducumentation = distribution

比如 Redhat,Ubuntu就是linux的distribution。

我们说linux版本和distribution的版本的时候要注意,这两者是不一样的。

linux版本是linux内核的版本。

linux 计算机概论 Linux介绍的更多相关文章

  1. 学习Linux——计算机概论

    一直想学习Linux,但计划时不时被耽误,现在开始,决定每天开始学习Linux.学习从最简单的开始,一步步,不能将最简单的东西忽略. 1.计算机硬件的五大单元 计算机分为三部分:输入单元,中央处理器即 ...

  2. Linux及文件系统基本介绍

    Linux及文件系统基本介绍 1   互联网行业现状 在服务器端市场: 超级计算机 2014年11月的数据显示前500系统中的485个系统都在运行着 Linux 的发布系统,而仅仅只有一台运行着 Wi ...

  3. Linux、GUN/Linux、GUN、GPL以及各个发行版本详细介绍

    学习Linux很久了,却对GUN,Linux,Linux发行版等无所了解,是不是觉得很对不起自己啊.呵呵,所以我就在网上找了些资料,总结在一起,还算是比较能说明问题的. 什么是Linux? 也许很多人 ...

  4. 第一阶段·Linux运维基础-第1章·Linux基础及入门介绍

    01-课程介绍-学习流程 02-服务器硬件-详解 03-服务器核心硬件-服务器型号-电源-CPU 01-课程介绍-学习流程 1.1. 光看不练,等于白干: 1.2 不看光练,思想怠慢: 1.3 即看又 ...

  5. 详细的linux目录结构详细介绍

    详细的linux目录结构详细介绍 --树状目录结构图 下面红色字体为比较重要的目录 1./目录 目录 描述 / 第一层次结构的根,整个文件系统层次结构的根目录 /bin/ 需要在单用户模式可用的必要命 ...

  6. 计算机与linux操作系统的发展

    一.计算机 (一)计算机的概念 1.概念:计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能.是能够按照程序运行,自动.高速 ...

  7. (第五篇)Linux操作系统基本结构介绍

    Linux操作系统基本结构介绍 Linux系统一般有4个主要部分:内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用 ...

  8. 12个Linux进程管理命令介绍(转)

    12个Linux进程管理命令介绍 [日期:2015-06-02] 来源:Linux中国  作者:Linux [字体:大 中 小]   执行中的程序在称作进程.当程序以可执行文件存放在存储中,并且运行的 ...

  9. Linux curl使用简单介绍

    在两台新搬迁的微信服务器上执行命令: curl -H "Content-Type: application/json" -d '{"partner_no":&q ...

随机推荐

  1. [bzoj4842][bzoj1283][Neerc2016]Delight for a Cat/序列_线性规划_费用流

    4842: [Neerc2016]Delight for a Cat_1283: 序列 题目大意:ls是一个特别堕落的小朋友,对于n个连续的小时,他将要么睡觉要么打隔膜,一个小时内他不能既睡觉也打隔膜 ...

  2. Oracle - WITH AS -用于查询当月与上月数据

    注:在之前工作的时候,数据需要根据时间查询出当月值和上月的值. 语法: WITH A AS( SELECT * FROM TABLE ), B AS (SELECT * FROM TABLE)SELE ...

  3. 小记--------spark的两种提交模式

    spark的两种提交模式:yarn-cluster . yarn-client 图解

  4. Spring 如何解决循环依赖问题?

    在关于Spring的面试中,我们经常会被问到一个问题,就是Spring是如何解决循环依赖的问题的. 这个问题算是关于Spring的一个高频面试题,因为如果不刻意研读,相信即使读过源码,面试者也不一定能 ...

  5. Android的视图(View)组件

    Android的绝大部分UI组件都放在android.widget包及其子包.android,view包及其子包中,Android应用的所有UI组件都继承了View类,View组件非常类似于Swing ...

  6. 牛客 158D a-贝利福斯数

    将所有形如ax+1的数称为a-贝利福斯数,其中x是正整数.一个a-贝利福斯数是a-贝利福斯素数,当且仅当它不能被分解成两个a-贝利福斯数的积.现在给出a,n,问有多少个 ≤ n的a-贝利福斯数可以被分 ...

  7. AI面试必备/深度学习100问1-50题答案解析

    AI面试必备/深度学习100问1-50题答案解析 2018年09月04日 15:42:07 刀客123 阅读数 2020更多 分类专栏: 机器学习   转载:https://blog.csdn.net ...

  8. jvm调试相关:jmap失效下找到alternatives神器

    1.使用 jmap <pid>出现的错误日志:很明显是版本问题 Error attaching to process: sun.jvm.hotspot.runtime.VMVersionM ...

  9. C#面向对象13 文件类操作 Path/File/FileStream

    1.path using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  10. O055、Detach Volume 操作

    参考https://www.cnblogs.com/CloudMan6/p/5636510.html     本节我们开始学习 Volume Detach 操作,就是将Volume从Instance上 ...