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. vue 新闻列表滚动效果

    效果如下: <template> <div> <div class="scroll-wrap"> <ul class="scro ...

  2. golang结构体数组

    转自: https://www.liaotaoo.cn/200.html package main import "fmt" type student struct{ id int ...

  3. 通过js判断整型,浮点型,布尔型,字符串型

    <!DOCTYPE html> <html > <head>     <meta charset="UTF-8">     < ...

  4. Spring5的总体架构图

    Spring5的主体架构图 主要是四大部分:Web.Data Access/Integration.Core Container.中间层,具体见下图:

  5. Tomcat: has been normalized to [null] which is not valid

    环境 tomcat 8.5 原因 在使用相对路径加载配置文件时,如果相对路径超出了 tomcat 容器的根目录,那么 tomcat 会提示 xxx has been normalized to [nu ...

  6. Day1 模拟赛 题解

    T1:首先你要发现,对于任意一个奇数i,i xor (i-1)=1; 那么我们可以将答案转化为统计有多少个1相互异或起来: 所以答案就那么几种: 如果你用的数位DP,只能说明你太高估day1T1了: ...

  7. linux的安装和配置

    转载:https://www.cnblogs.com/hhaahh/p/10404093.html 1.VMware简介 此软件是一个虚拟的pc机软件,可以在现有操作系统中虚拟出一个新的硬件环境,以此 ...

  8. spark教程(八)-SparkSession

    spark 有三大引擎,spark core.sparkSQL.sparkStreaming, spark core 的关键抽象是 SparkContext.RDD: SparkSQL 的关键抽象是 ...

  9. idea jar 中没有主清单属性

    idea 中maven需要有插件 <build> <plugins> <plugin> <groupId>org.springframework.boo ...

  10. C++入门基础知识(二)

    一:引用 概念:是给一个已经存在的变量取一个别名,编译器不会为引用变量开辟内存空间,它和引用的变量公用一块内存空间. 例如: 类型& 引用变量名(对象名)= 引用实体 int& a = ...