• 计算机基础


    ---恢复内容开始---

    计算机基础

      一.引言

         基础计算机课程共分成四大块:计算机组成原理,数据结构,操作系统和计算机网络。今天兄弟总结了一点点干货给大家瞧一瞧,算做一个入门,嘿嘿!

      二.计算机基础介绍

       (一)计算机组成

        1.计算机层次结构

        计算机硬件 +系统软件+应用软件

        2.计算机组成和计算机体系结构

        计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,如指令系统、寻址地址组成及I/O机理等。计算机组成是指如何实现体系结构所体现的属性,包含对程序员透明的硬件细节,如组成计算机系统的各个功能部件的系统和功能,及相互连接方法等。

        3.计算机的构成

        硬件系统+软件系统

          硬件系统 :运算器+控制器+存储器+输入设备+输出设备

            运算器:是负责算数运算与逻辑运算。与控制器共同组成了中央处理器(CPU)

            控制器:是负责发送和接收指令

            存储器:是用来存储正在进行程序,将要进行程序的数据及刚处理完的数据

            输入设备:是用来进行输入的设备。如键盘,扫描仪等

            输出设备:是用来进行输出的设备。如显示器,音箱等。

            主板:安装了组成计算机的主要电路系统,一般有BIOS芯片,I/O控制芯片,键和面板开关接口,指示灯插接件,扩充插槽,主板及插卡的直流电源供电接插件等元件。

          软件系统:系统软件+应用软件

        4.硬件,软件及用户的关系:

           硬件是基础,硬件通过系统软件控制来启动硬件,并让各个硬件之间相互协同工作,在系统软件的基础上是用户,用户操纵的是操作系统,并在系统软件的基础上安装相应的应用软件,来完成用户所需的工作。所以说最底层的是硬件,硬件上是系统软件,系统软件上一层是应用软件,而最上层的是用户。

        5.编程语言

          1.用来定义计算机程序的形式语言,分为机器语言,汇编语言和高级语言。

          2.编程语言被设计专门使用在计算机上,用来定义算法和数据结构。

     

       (二)数据结构

       1.数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关  

     

       (三)操作系统

       1.操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口,功能包括管理计算机系统的硬件,软件及数据资源,控制程序运行,改善人机界面,为其他应用软件提供支持,为其他软件的开发提供必要的服务和相应的接口等。实际上,用户不用接触操作系统的,操作系统管理着计算机硬件资源,同时按照应用程序的资源请求,分配资源,如划分CPU时间,内存空间的开辟,调用打印机等。

      2.操作系统发展

       第一代(真空管和穿孔卡片)——第二代(晶体管和批处理系统)——第三代(集成电路芯片和多道程序设计)——第四代(个人计算机)

         (四)计算机网络

      1.计算机网络,是指将地理位置不同的具有独立功能的多肽计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。

      2.网络七层模型

      应用层: 网络服务和最终用户的一个接口 HTTP FTP SMTP TFTP SNMP DNS TELNET HTTPS POP3 DHCP

      表示层:数据的表示,安全,压缩。(若5层则加入应用层)格式: JPEG ASCII DECOIC 加密格式

      会话层: 建立,管理,终止回话。(若5层则加入应用层)对应主机进程,指本地主机和远程主机正在进行的回话。

      传输层: 定义传输数据的协议端口号,以及流控和差错校验。TCP UDP 数据包一旦离开网卡即进到网络传输层。

      网络层:进行逻辑地址寻址,实现不同网络之间的路径选择。ICMP IGMP IP(IPV4 IPV6) ARP RARP

      数据链路层:建立逻辑链接,进行硬件地址寻址,差错校验等功能。(由底层网络定义协议)将比特组合成字节从而组合成帧,用MAC地址访问介质,错误发现但不能纠正。  

      物理层:建立,维护,断开物理衔接。(由底层网络定义协议)

      3.IP地址分类

        (1)公有地址:Inter NIC机构分配给注册组织机构的IP地址。

        (2)私有地址:

                A类:10.0.0.0~10.255.255.255      子网掩码:255.0.0.0

                B类:172.16.0.0~172.31.255.255     子网掩码:255.255.0.0

                C类:192.168.0.0~192.168.255.255    子网掩码:255.255.255.0

        

     

     

        三.计算机工作过程

        根据冯·诺依曼的设计,分为:1.取出指令 2.分析指令 3.执行指令 4.为执行下一条指令做好准备,即取出下一条指令地址

        四.计算机硬件介绍

        (一)流程:内核-CPU(发送指令集)-寄存器—内存-操作系统-应用软件

            (二)CPU:发送指令集(取指令-解码-执行)

        (三)内存:负责临时存储

        (四)寄存器:保存关键变量和临时数据

                分类:1.通用寄存器 帮忙保存临时变量

                   2.程序计数器 保存将要取出的下一条指令的内存地址,指令取出后,程序计算器就被更新以便执行后期的指令。

                   3.堆栈指针 指向内存中当前栈的顶端,该栈包含已经进入但还没有推出的每个过程中的一个框架,在一个过程的堆栈框架保存了有关的输入参数,局部变量及那些没有保存在寄存器中的临时变量。

                   4.程序状态字寄存器(PSW)包含条码位(由比较指令设置),CPU优先级,模式(用户态或内核态),以及各种其他控制位。用户通常读入整个PSW,但只对其中少量的字段写入。在系统调用和I/O中,PWS!!!

        (五)堆栈,堆,队列 !!!

           队列只能在队头做删除工作,在队尾做插入工作,而栈只在栈顶做插入和删除操作。队列好比火车进洞,“先进先出,后进后出“,

           栈就是一个桶,“先进后出,后进先出“

           堆是在程序运行时,不是在程序编译时,申请某个大小的内存空间,即动态分配内存。堆可以随心所欲的增加和删除变量,不遵循什么次序,开心就好-.-

           堆是程序运行中申请的动态内存,栈只是一种使用堆的方法“先进后出”,两者都是存放数据的地方。

        (六)处理器的设计

            流水线式的设计,执行n,对n+1解码,并读取n+2。

        (七)CPU的两种模式

            内核态:执行指令集所有指令(全能)

            用户态:仅执行指令集中一个子集(权限控制)

            内核态↔用户态 (系统调用) 通过操作系统改二进制

        (八)多线程和多核芯片

            1.进程:资源单位(地铁n号线)   线程:执行单位(线路)

            2. Intel和AMD      (L2缓存比内存快点)

            

     

              

     

     

         (九)存储器

            1.分类:  寄存器,高速缓存,内存,磁盘,磁带

            2.寄存器:L1缓存

               高速缓存:L2缓存

               主存:随机访问存储RAM,易失性存储,断电后数据全部消失

             非易失性随机访问存储:ROM(不能修改),EEPROM和闪存(flash memory) (可擦除和重写,但时间比ROM多)

             易失性存储:CMOS,保存当前时间和日期,如电池驱动,还可以保存配置的参数,省电。

         (十)磁盘

            1.数据存放一段段的扇区

            2.8个bit=1Bytes    bit:二进制位

             1024Bytes=1kB

             1024kB=1MB

               一个block=8个扇区

            3.虚拟内存

              将正在使用的程序放入内存中执行,暂时不需要的程序放到磁盘的某个地方。

              swap交换分区

              PCB:上下文切换,CPU从一个进程或线程到另一个进程或线程,只发生在内核态中。

          (十一)磁带

             1. 同价钱比硬盘更大存储量,易携带,但速度慢。

             2.平均寻道时间:机械手臂从一个柱面随机移动到相邻的柱面的时间成为寻到时间,找到了磁道就以为着招到了数据所在的那个圈圈,但是还不知道数据具体这个圆圈的具体位置

             3. 平均延迟时间:机械臂到达正确的磁道之后还必须等待旋转到数据所在的扇区下,这段时间成为延迟时间

          (十二)I/O设备

             1.组成:设备控制器和设备本身

             2.设备驱动:逻辑设备名转换成设备的物理地址,启动指定的I/O设备,完成程序规定的I/O操作,并对由设备发来的中断请求进行及时响应,根据中断类型进行相应的处理。

             3.控制方式:

      有四种I/O控制方式,即程序I/O控制方式、中断驱动I/O控制方式、直接存储器访问DMA控制方式及I/O通道控制方式。

     

    程序直接控制方式的工作过程非常简单,但在循环测试中浪费了大量的CPU处理时间,所以CPU的利用率相当低。

     

    用中断方式交换数据时,每处理一次I/O数据交换,都会耗去一定的CPU处理时间,为减少中断对CPU造成的负担,对于一些高速的外围设备,以及成组交换数据的情形来说,例如磁盘驱动器,仍然显得速度太慢。可以将一部分I/O任务交给一个的专用DMA控制器。

     

    DMA方式一般用于高速传送成组的数据。其优缺点如下:

     

    优点:操作均由硬件电路实现,传输速度快,CPU仅在初始化和结束时参与,不干预数据传送,可以减少大批量数据传输时CPU的开销。CPU与外设并行工作,效率高。

     

    缺点:DMA方式也有一定的局限性,这是因为DMA方式在初始化和结束时仍由CPU控制,DMA方式周期挪用内存总线,CPU和DMA交替访问内存,通过硬件线路分时地控制这两者对总线的使用权,使得CPU计算效率下降。

     

          (十三)总线

             1.北桥: 即PCI桥,连接高速设备

             2.南桥:即ISA桥,连接慢速设备

          (十四)计算器启动过程

             加电——BOIS运行,检测硬件(cpu,内存,硬盘)——BIOS读取CMOS存储器中的参数,选择启动设备——从启动设备行读取第一个扇区的内容(MBR)——根据分区信息读入bootloader启动装载模块,启动操作系统——操作系统询问BIOS,获得配置信息——初始化相关表格,加载进程,并在终端启动登录或GUI

          (十五)应用程序的启动过程

            点击应用程序(软件)→软件将数据写入内存→CPU从内存中读取数据并执行然后返回内存→启动软件

           

          

            

     

     

     

     

     

     

    ---恢复内容结束---

  • 相关阅读:
    Android 拍照 代码实例
    利用Android手机里的摄像头进行拍照
    看视频时,类加载器没太理解,现在再整理下几个要点
    关于java设计模式与极品飞车游戏的思考
    【Mood-3】心声
    源自梦想 eclipse快捷键整理
    2020重新出发,JAVA语言,JAVA的诞生和发展史
    2020重新出发,序章: 语言的诞生
    2020重新出发,JAVA学前了解,DOS常用命令
    2020重新出发,JAVA学前了解,Windosws常用快捷键
  • 原文地址:https://www.cnblogs.com/jiangshitong/p/6532964.html
Copyright © 2020-2023  润新知