计算机
计算机是具有数据处理与逻辑运算的机器。
它有输入单元,输出单元,CPU 内部的控制单元,逻辑处理单元以及内存组成。
 
输入单元如鼠标键盘等输入设备;
 
输出单元如打印机,显示屏,等输出设备;
 
CPU (中央处理器,Central Processing Unit),CPU 内部含有微小指令集,可分为精简指令集(RISC)和复杂指令集(CISC)。这些指令集可以解析指令码从而让 CPU 干活,这也就意味着我们所用的程序软件都需要经过微指令集才能完成程序的功能,比如听歌打游戏等等。
既然 CPU 需要工作,那就有工作速度,又叫频率,频率指的是 CPU 每秒的工作次数,如 3.0GHz 即表示每秒工作 3.0 * 10^9 次。
 
内存,用来存放数据的地方,CPU 工作所需要的数据都是从内存中来的。
 (CPU 的频率很高,导致以这样的频率从内存中读数据的话,内存是远远跟不上的,所以又将 CPU 的频率分为外频和倍频,CPU 与外部组件如内存进行数据传输/运算的就用外频,而倍频就是 CPU 内部用来加速工作性能的倍数,即倍频 = 频率 / 外频)
 
内存可分为动态随机访问内存(Dynamic Random Access Memory, DRAM)和静态随机访问内存(Synamic Random Access Memory, SRAM)。
DRAM,只有在通电时才记录并且使用,断电后数据就消失了,所以又叫挥发性内存;
SRAM 的由来是因为 CPU 通过北桥从内存中读数据,那么如果比较常用的数据被事先放置到 CPU 内部就不需要再去北桥读数据了,这就是缓存 cache 的概念。前面知道 DRAM 是实现不了与 CPU 频率相同的,所以用 SRAM 来保存这部分数据。
 
[***@*** ~]$ cat /sys/devices/system/cpu/cpu0/cache/index0/size
32K
[***@*** ~]$ cat /sys/devices/system/cpu/cpu0/cache/index1/size
32K
[***@*** ~]$ cat /sys/devices/system/cpu/cpu0/cache/index2/size
256K
[***@*** ~]$ cat /sys/devices/system/cpu/cpu0/cache/index3/size
35840K

index 0 和 index 1 表示第一层缓存的 数据缓存和指令缓存,index2 表示第二层缓存,index3 表示第三层缓存。

 
 
硬盘,由许多盘片,机械手臂,磁头与主轴马达所组成。数据被写入到具有磁性物质的盘片上,实际运行时,主轴马达让盘片转动,然后机械手臂可伸展让磁头读取盘面上的数据。
硬盘的存储量可根据公式: header * cylinder * sector * 512 bytes 计算,sector 指盘片上的扇区,它是由圆心以放射状方式分割出的磁盘的最小存储单位,每个扇区大小固定为 512 bytes。扇区组成一个圆就称为磁道 Track。在多硬盘上,所有盘面上的同一个磁道可以组成一个柱面 Cylinder。所以上面的公式就理解为 header 数量 * 每个 header 负责的柱面数量 * 每个柱面所含有的扇区数量 * 扇区的容量。
 <硬盘的详细介绍可看这里>
 
 
主板,主板上面集成了一堆芯片组,主要分为两个桥接器北桥和南桥,北桥负责连接速度较快的 CPU,内存,显卡等,南桥负责连接速度较慢的设备,如硬盘,网卡等。
 
 
操作系统
计算机组装好了,但是由于它只认识 0 和 1, 所以要让它工作就得写汇编语言,翻译成机器码给计算机执行。这种方式的缺点是程序不能移植,换到其它硬件上就不能用了;太过复杂,需要了解硬件的功能函数,才能对应的写程序代码;等等。
 
基于此,操作系统就诞生了,它是一组程序,负责管理计算机的所有活动以及驱动系统中的所有硬件。
 
它由操作系统内核和系统调用层两部分组成。
操作系统内核负责管理计算机的所有硬件,内核程序放置到内存当中的区块是受保护的,并且开机后就一直常驻在内存中。
内核的主要功能有:
  • 系统调用接口(system call interface)
  • 程序管理(Process control)
  • 内存管理
  • 文件系统管理
  • 设备驱动(Device driver)
系统调用层,是一组开发接口,通过它使得开发人员不需要考虑内核的相关功能,直接调用开发接口即可开发。比如,写 C 程序语言只需要参考 C 程序语言的语法即可实现驱动内核来工作。 
 
 
计算机开机执行的第一个程序是 BIOS(Basic Input Output System),BIOS 会加载 CMOS 中的参数,并尝试调用存储设备中的开机程序,再进入到操作系统中,从而完成开机。
BIOS 是一套程序,它被写死到主板中的内存芯片中,这个内存芯片在不通电的情况下也能将数据记录下来,这块芯片叫做只读存储器(ROM,Read Only Mermory)。
CMOS 是一个芯片,上面记录着主板上的重要参数,包括系统时间,CPU 电压与频率,各项设备的 I/O 地址与 IRQ 等。
<操作系统加载过程可看这里>
 
 
Liunx
类似于 Windows 系统,Liunx 也是一个操作系统。
它的优点有:系统稳定,免费或少许免费,安全性/漏洞快速修补,多任务/多用户,网络功能强大等等,使得 Liunx 很适合用来做服务器的操作系统。
Liunx 版本: Liunx kernel 版本 + Liunx distribution。 Liunx distribution = Kernel + Softwares + Tools。
 
 
(完)

每天学五分钟 Liunx 000 | 计算机与 Liunx的更多相关文章

  1. 如何从40亿整数中找到不存在的一个 webservice Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库 WPF实战案例-打印 RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange

    如何从40亿整数中找到不存在的一个 前言 给定一个最多包含40亿个随机排列的32位的顺序整数的顺序文件,找出一个不在文件中的32位整数.(在文件中至少确实一个这样的数-为什么?).在具有足够内存的情况 ...

  2. 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画

    原文:零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形 ...

  3. 五分钟学Java:如何才能学好Java Web里这么多的技术

    原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 系列文章介绍 本文是<五分钟学Java>系列文章的一篇 本系列文章主要围绕Java程序员必须掌握的核心技能,结合我个人三年 ...

  4. 一门能让你五分钟学会的语言-Brainfuck

    看到标题,不出意外的话,你肯定开始骂我了:**标题党,什么编程语言五分钟就能学会? 其实我本来也是不相信的,但是学过了才知道这是真的. 1.Brainfuck 看到这个小标题,不要误会,我没有骂人. ...

  5. [分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例)

    [分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例) 踏雁寻花 发表于 2015-8-23 23:31:28 https://www.itsk.com/thread-35 ...

  6. 《sed的流艺术之一》-linux命令五分钟系列之二十一

    本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...

  7. C语言 · 上帝造题五分钟

    算法提高 上帝造题五分钟   时间限制:1.0s   内存限制:256.0MB      问题描述 第一分钟,上帝说:要有题.于是就有了L,Y,M,C 第二分钟,LYC说:要有向量.于是就有了长度为n ...

  8. 算法笔记_105:蓝桥杯练习 算法提高 上帝造题五分钟(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 第一分钟,上帝说:要有题.于是就有了L,Y,M,C 第二分钟,LYC说:要有向量.于是就有了长度为n写满随机整数的向量 第三分钟,YUHC ...

  9. 五分钟搞定Linux容器

    [TechTarget中国原创] Linux容器针对特定工作负载提供了全新的灵活性与可能性.存在很多解决方案,但是没有一个解决方案能够像systemd容器那样进行快速部署.给我五分钟,本文将介绍如何使 ...

  10. 五分钟搞定 HTTPS 配置,二哥手把手教

    01.关于 FreeSSL.cn FreeSSL.cn 是一个免费提供 HTTPS 证书申请.HTTPS 证书管理和 HTTPS 证书到期提醒服务的网站,旨在推进 HTTPS 证书的普及与应用,简化证 ...

随机推荐

  1. 后端程序员必会的前端知识-05:React

    五. React 1. React 基础 react 是前端三大框架之一 没有 vue 的基础更好,因为两者思想不太一样,不能用 vue 的习惯学习 react 需要有 js 基础,视频 19-58 ...

  2. MySQL索引命名规范

    [强制]主键索引名为 pk_字段名:唯一索引名为 uk_字段名:普通索引名则为 idx_字段名 说明:pk_ 即 primary key:uk_ 即 unique key:idx_ 即 index 的 ...

  3. JVM整理笔记

    1.JVM位置 JVM是作用在操作系统之上的,它与硬件没有直接的交互 2.JVM体系结构 3.类装载器ClassLoader 类装载器:负责加载class文件,class文件在文件开头有特定的文件标示 ...

  4. 接手了个项目,被if..else搞懵逼了

    背景 领导:"这个项目,今后就给你维护了啊,仔细点." 小猫:"好,没问题". 可当满怀信心的小猫打开项目工程包翻看一些代码之后,瞬间懵逼没了信心. 是这样的 ...

  5. Cesium最简单的视效升级方案,无需修改代码即可实现

    Cesium依靠其开源免费的特点基本上完全垄断了GIS这一块,并且其中99%的用户都是使用的CesiumJS,然而,对于一些使用Cesium的项目来说,要想升级视效可能需要进行繁琐的代码修改,增加了开 ...

  6. 用C实现HashTable

    简述HashTable的原理 HashTable是一种数据结构,通过key可以直接的到value,查找值时间总为常数级别O(1). 原理 HashTable底层是使用了数组实现的.数组只要知道了索引, ...

  7. 劫持最新版 QQNT / QQ / TIM 客户端 ClientKeys

    针对 腾讯官网 最新发布的 QQNT 9.9.6 与 QQ 9.7.21 新版本客户端全面更新截取代码 大伙应该都知道自从 QQ 9.7.20 版本起就已经不能通过模拟网页快捷登录来截取 Uin 跟 ...

  8. JavaFx之TableView表格添加按钮删除行(二十二)

    JavaFx之TableView表格添加按钮删除行(二十二) JavaFx之TableView添加按钮 JavaFx之TableView删除行 编写一个xml <?xml version=&qu ...

  9. (转)Harbor 启用镜像扫描功能方法

    A demo environment with the latest Harbor stable build installed. For additional information please ...

  10. 文心一言 VS 讯飞星火 VS chatgpt (40)-- 算法导论5.4 4题

    四.一次聚会需要邀请多少人,才能让其中 3 人的生日很可能相同? 文心一言: 为了解决这个问题,我们需要先计算出所有可能的生日组合数,然后计算出其中生日相同的组合数. 已知需要邀请的人数为:23人 根 ...