python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统

python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统

  • 引子
  • python是什么? 什么是编程语言?为何要有编程语言?
  • 什么是编程?什么是程序?什么是进程?为何要编程?
  • 计算机基础
  • 什么是计算机?为何 要有计算机?计算机的组成
  • 与运行程序有关的三大核心硬件
  • 计算机硬件详解
  • 操作系统
  • 计算机 的三层结构

</u

  • python是什么?

    python是一门高级编程语言

  • 什么是编程语言?

    语言就是一种事物与另外一种事物沟通表达的方式/工具

    人----------------编程语言----------------计算机

    编程语言的本质就是一门语言

    能够与 机器对话的人

  • 什么是编程?
    1. 想好做事的步骤
    2. 找一种对方能听懂得语言把做事的 步骤给翻译下来,并且存入文件 中编程即程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来,产出的结果就是包含一堆字符的文件。

    银行行长-----------------------------业务员

    接收客户输入的账号

    接收客户输入的密码

    判断 输入的账号 等于 正确的账号 并且 输入的密码 等于 正确的密码

    告诉用户登录成功

    否则

    告诉用户登录失败

    程序员-----------------计算机

  • 什么是程序 ?

    程序就是一系列的代码文件

    程序又称之为软件,软件是计算机硬件的灵魂

    计算机硬件是负责做事的,具体怎么做则由程序控制

  • 什么是进程?

    进程指的是一个正在运行的程序

  • 为什么要编程?
  • 计算机就相当于人类的奴隶,编程的目的就是为了让计算机代替人类工作,从而解放人类


  • python的特点?

    Python是一种面向对象、解释型、弱类型的脚本语言,他也是一种功能强大而完善的通用型语言。

一、计算机的基础 (***)
  1. 什么是计算机

    计算机俗称“电脑”,包含人对计算机终极期望,能够真的像人脑一样去工作。

  2. 为何要有计算机

    为了执行人类的程序,从而把人类解放出来

    大前提:计算机所有的组成都是模仿人的某一功能或器官

    计算机的五大组成部分
  3. 控制器:是计算机的指挥系统,负责控制计算机所有其他硬件的运行

  4. 运算器:数学运算和逻辑运算

    控制器 运算器 =》 CPU ------------人类的 大脑

  5. 存储器:存取数据

    内存:基于电工作,内存里存放的都是电信号

    特点:存取速度快,断电容易丢失,只能临时存取数据---------》人类的记忆功能

    外存:比如磁盘,基于磁工作,磁盘里存放的磁信号

    特点:存取速度远远慢于内存,断电数据依然存在----------》人的笔记本

  6. 输入设备(input)

    如:键盘、鼠标等等

  7. 输出设备(output)

    如显示器、打印机等等

二、计算机硬件详解(***)

cup

x86-64

​ cpu具有向下兼容

​ 64的cpu既能运行32位的程序也能运行64位的程序

多线程与多核芯片:

​ 2核4线程:

​ 2核代表有两个cpu,4线程指的是每个cpu都有两个线程=》假4核

​ 4核8线程

​ 4核代表有4个cpu,8线程指的是每个cpu都有两个线程=》假8核

内存:随机存取存储器

​ 再往下一层是主存,此乃存储器系统的主力,主存通常称为随机访问存储RAM,就是我们通常所说的内存,容量一直在不断攀升,所以不能再高速缓存中找到的,都会到主存中找,主存是易失性存储,断电后数据全部消失

  • 硬盘:

  • 机械硬盘:磁盘

  • 磁道:一圈数据,对应着一串二进制(1bit代表一个二进制位)

    8bit比特位=1Bytes字节

    1024Bytes=1KB

    1024KB=1MB

    1024MB=1GB

    1024GB=1TB

    1024TB=1PB

​ 200G=20010001000B

​ 每个磁头可以读取一段换新区域,称为磁道

​ 把一个戈丁手臂位置上所以的磁道合起来,组成一个柱面

​ 每个磁道划成若干扇区,扇区典型的值是512字节

  • 扇区:

    一个扇区通过为512Bytes

    站在硬盘的解读,一次性读写数据的最小单为为扇区

    操作系统一次性读写的单位是一个block块=》8扇区的大小=4096Bytes

  • 柱面:

    每张盘片由若干个磁道和若干个扇区组成从外向内分别为0磁道、1磁道、2磁道……不同盘片的同一磁道构成的一个圆柱面称为柱面,柱面由外向内依次为0柱面、1柱面、2柱面……磁盘将信息按扇区存入

    平均寻道时间:机械手臂转到数据所在磁道需要花费的时间,受限于物

    理工艺水平,目前机械硬盘可以达到的是5ms

​ 平均延迟时间:转半圈需要花费4ms,受限于硬盘的转速

​ IO延迟 = 平均寻道时间 + 平均延迟时间

​ 优化程序运行效率的一个核心法则:能从内存取数据,就不要从硬盘取

  • 固态硬盘:固态盘(SSD)

    是用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)以及缓存单元组成。

    区别于机械硬盘由磁盘、磁头等机械部件构成,整个固态硬盘结构无机械装置,全部是由电子芯片及电路板组成。

  • buffer写缓冲区:

    是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区,显然缓冲区是具有一定大小的。

    缓冲区根据其对应的是输入设备还是输出设备,分为输入缓冲区和输出缓冲区

  • cache读缓存:

    cache是一个非常大的概念。

  • 缓存(cache)与缓冲(buffer)的主要区别

    Buffer的核心作用是用来缓冲,缓和冲击。比如你每秒要写100次硬盘,对系统冲击很大,浪费了大量时间在忙着处理开始写和结束写这两件事嘛。用个buffer暂存起来,变成每10秒写一次硬盘,对系统的冲击就很小,写入效率高了,日子过得爽了。极大缓和了冲击。

    Cache的核心作用是加快取用的速度。比如你一个很复杂的计算做完了,下次还要用结果,就把结果放手边一个好拿的地方存着,下次不用再算了。加快了数据取用的速度。

    简单来说就是buffer偏重于写,而cache偏重于读。

​ ps:有时候大家要好好理解这些专有名词字面上的意思,对理解这些概念有好处,缓冲:缓解冲 击,缓存:临时存储

  • 虚拟内存:

    许多计算机支持虚拟内存机制,该机制使计算机可以运行大于物理内存的程序,方法是将正在使用的程序放入内存取执行,而暂时不需要执行的程序放到磁盘的某块地方,这块地方成为虚拟内存,在linux中成为swap,这种机制的核心在于快速地映射内存地址,由cpu中的一个部件负责,成为存储器管理单元(Memory Management Unit MMU)

IO设备=设备的控制+设备本身


三、计算机的三层结构:

应用程序

操作系统

计算机硬件(cup、内存、硬盘)

python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统

  • 一个非常重要的基础概念:平台

应用程序都是运行于操作系统之上,而操作系统则是运行于硬件之上的,所以承载应用程序的是一台运行有操作系统的计算机,称之为应用程序的运行平台,即:硬件 + 操作系统 == 平台

常见的平台有:windows系统+某款硬件、linux系统+某款硬件、ubuntu+某款硬件等,我们在开发应用程序时就需要考虑到应用程序的跨平台性,如果能开发出一款可以在任意平台运行的应用程序,那对于开发者来说真是极大的福音。而决定应用软件的跨平台性的关键因素往往是编程语言的选择,python恰好是一款跨平台性语言,这也是我们学习它的原因之一。

计算机完整体系结构图

python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统

上一篇:Spring配置文件中标签的scope属性


下一篇:[转载]DBA的特质第一部分:技术