408 | 【2011年】计算机统考真题 自用回顾知识点整理

news2024/11/20 8:37:50

选择题

T3:循环队列

        

不同指针指向,队列判空/判满条件

    1. rear:指向队尾元素 front:指向队头元素前一个位置
    (1)牺牲一个存储空间
    (2)判空条件:front == rear
    (3)判满条件:(rear+1)%MaxSize == front

    2. rear:指向队尾下一个元素 front:指向队头元素
    (1)牺牲一个存储空间
    (2)判空条件:front == rear
    (3)判满条件:(rear+1)%MaxSize == front

    3. rear:指向队尾元素 front:指向队头元素 ——注意判空和判满条件
    (1)牺牲一个存储空间
    (2)判空条件:(rear+1)%MaxSize == front
    (3)判满条件:(rear+2)%MaxSize == front
           

    区别与联系
    (1)上述三种指针指向的判空/判满条件均是牺牲一个存储空间,上述三种需要特别注意第三种的指针指向(可以通过画一个换装图好好体会)。
    (2)均可以在结构体内增加 tag (标记上一步是入队还是出队操作,只有入队才会造成假溢出现象) 或 size(标记循环队列中存储数据元素的个数,以此用来区分队满和队空)
    (3)基本入队、出队操作略有不同(具体见代码)

T8:图的基本概念

        

T9:散列表性能分析

        

        注意散列表的平均查找长度依赖于 装填因子,不直接依赖于记录数和散列表长度!

        要与查找效率区分开!

T11:堆排序

        

         

T13:IEEE754浮点数表示

T14:存储器的分类

        

T17:标志位

        

T19:指令系统

        1、空操作指令,取指操作后,PC+1.

        2、不采用指令预取技术,每个指令周期都需要取指令。

T20:中断类型号

  • 硬件向量法识别中断源(向量中断、80x86采用)
    • 中断类型号(向量地址):中断服务程序的入口地址的地址。指针的指针,对应一个中断服务程序
    • 中断向量表(入口地址):中断服务程序的入口地址
    • 中断类型号用于指出中断向量的地址,CPU响应中断请求后,将中断应答信号INTR 发回到数据总线上,CPU从数据总线上读取中断类型号后,查找中断向量表,找到相应中断处理程序的入口

T22:

        CPU时间就是电脉冲的指令周期,一次脉冲运算一次。

 

T26:IO软件结构层次

        

 

T29:抖动现象、对换

  • 抖动/颠簸:频繁的页面调度行为,根本原因是分配给每个进程的物理块太少。
  • 在具有对换功能的操作系统中,通常把外存分为文件区和对换区。前者用于存放文件,后者用于存放从内存换出的进程。
  • 抖动现象是指刚刚被换出的页很快又要被访问,为此,又要换出其他页,而该页又快被访问,如此频繁地置换页面,以致大部分时间都花在页面置换上。
  • 撤销部分进程可以减少所要用到的页面数,防止抖动。
  • 对换区大小和进程优先级都与抖动无关。

        

 

 T30:编译链接与装入,3种装入方式(2种重定位技术与绝对装入)

  • 应用程序从用户编写的源文件到内存中执行的进程,大致分为3个阶段:
    • 首先,经过编译程序(Compiler)将源代码编译为若干个目标模块(Object Module);
    • 其次,通过链接程序(Linker)将编译好的目标模块以及所需的库函数链接在一起,形成完整的装入模块(LoadModule);
    • 最后,通过装入程序(Loader)将这些装入模块装入内存并执行。简单来说,从源程序到执行的进程,经历了编译、链接、装入三个步骤。
  • 注:
    • 对程序设计者来说,数据的存放地址由数据名称决定,称为名地址或符号名地址,源程序的地址空间称为名空间或符号名空间。源程序经过编译之后得到目标代码,由于编译程序无法得知代码驻留在内存中的实际位置(即物理地址),一般总是从0号单元开始编址,并顺序分配给所有的地址单元,这些都不是真实的内存地址,因此称为相对地址或者虚拟地址
    •  一个完整的程序可以由多个模块构成,这些模块都是从0号单元开始编址。当链接程序将多个模块链接为装入模块时,链接程序会按照各个模块的相对地址将其地址构成统一的从0号单元开始编址的相对地址
    • 当装入程序将可执行代码装入内存时,程序的逻辑地址与程序在内存的实际地址(物理地址)通常不同,这就需要通过地址转换将逻辑地址转换为物理地址,这个过程叫作重定位

  • 静态地址重定位
    • 即在程序装入内存的过程中完成,是指在程序开始运行前,程序中的各个地址有关的项均已完成重定位,地址变换通常是在装入时一次完成的,以后不再改变,故成为静态重定位。
    • 优点:无需硬件支持
    • 缺点:1)程序重定位之后就不能在内存中搬动了;2)要求程序的存储空间是连续的,不能把程序放在若干个不连续的区域中。
  • 动态地址重定位
    • 不是在程序执行之前而是在程序执行过程中进行地址重定位。更确切的说,是在每次访问内存单元前才进行地址变换。动态重定位可使装配模块不加任何修改而装入内存,但是它需要硬件一定位寄存器的支持。
    • 优点:1)目标模块装入内存时无需任何修改,因而装入之后再搬迁也不会影响其正确执行,这对于存储器紧缩、解决碎片问题是极其有利的;2)一个程序由若干个相对独立的目标模块组成时,每个目标模块各装入一个存储区域,这些存储区域可以不是顺序相邻的,只要各个模块有自己对应的定位寄存器就行。
    • 缺点:需要硬件支持。
  • 页式存储管理是动态重定位。

 

T31:甘特图

        

         

 

T33:参考模型提供服务 给我记住555

        

        面向连接的虚电路方式和无连接的数据报方式。

        数据报和虚电路方式是分组交换的两种方式。

 

T34:数据传输速率(比特率)与波特率

        

 

T36:重复 repeat

        

         

T37:路由表

        

T40:TCP累计确认

        后退n帧协议中的累积确认(偶尔捎带确认):在连续接收好几个正确的数据帧后,才对最后一个数据帧发确认信息

        TCP中的累计确认:只确认数据流中至第一个丢失字节为止的字节。

        累积确认:对按序到达的最后一个分组发送确认


 

 

 

解答题

T44:CPU访问存储系统的整体流程

计组 | 【三 存储系统】强化阶段 —— 应用题与例题类型总结_西皮呦的博客-CSDN博客 

1、CPU访问存储系统的整体流程

  • 1)程序员交给CPU逻辑地址,进行虚实地址转换才能找到该虚拟地址所对应的数据实际存放的位置。
  • 2)虚实地址转换:页表、TLB
    • 虚页号与实页号的对应关系存在页表中,页表存在主存中,比较活跃的页表项存在TLB中,TLB相当于专用于存页表项的Cache。
    • 故转换时先查TLB,若TLB不命中,再查页表,若页表不命中,说明该页面还未调入主存,需发出缺页中断,从辅存中调入并更新页表和TLB。
  • 3)页框号+页内地址拼接得到物理地址,访问Cache-主存体系操作相应的数据
    • 先访问Cache,若Cache未命中,说明该块在主存中,需要先把该块调入Cache再处理,或者边调入Cache边处理。
    • 注:TLB或页表命中后说明该页面在主存中。

2、地址结构

  • 虚拟地址分为虚页号和页内地址; 
  • 物理地址分为实页号和页内地址。
  • 实页号 = 物理页号 = 页框号
  • Cache-主存体系中,地址先分为块号和块内地址。
  • 对应不同的映射方式,主存地址的块号需要拆分成不同的字段,高位均为标记字段,需要存入Cache。
  • 注:页表到TLB的映射与主存到Cache的映射方式类似。

3、是否命中

        1)页表:求出虚页号,看页表中是否有对应项且有效位为1

        2)Cache:根据Cache字块标记找到映射到的Cache行,该行有效位为1且标志与当前地址中的标记字段相同

        3)TLB:与Cache类似

T45:PV大题自我救赎Tips

  • 1.草稿上写出进程行为轨迹,多留点空位
  • 2.按逻辑一步一步推进,分析:哪些地方可能会等待?哪些地方会访问临界资源?
  • 3.坚持一个原则,PV操作一定是成对出现的。利用这个特性,先在可能阻塞的地方P一下,再思考应该在什么地方V
  • 4.先确定PV操作的位置,再思考该设置什么样的信号量、信号量的含义是什么

T46:文件物理结构及存储方式

注意!创建新文件 不是 对文件进行增加记录!

        优点:支持随机访问,随机访问速度最快,且存储空间利用率最高

        缺点:文件数据的“增/删/改”不方便。

        优点∶文件数据的“增/删/改”方便;

        缺点∶“查”不方便,不支持随机访问,只能顺序访问,需要使用额外的存储空间来存放磁盘块之间的链接指针;

 

        优点∶文件数据的“增/删/改”方便,也支持随机访问,但随机访问速度不如连续分配方式;

        缺点∶索引表的存放需要消耗额外的存储空间。 

        在本题所述场景中,不需要对文件进行“增/删/改”的操作,因此应该使用连续分配方式,可以使文件访问效率最高,存储空间利用率最高。为了定位文件数据块,需要在FCB中记录文件的<起始块号,块数>或<起始块号,结束块号>

 

        

        将所有的FCB集中存放,文件数据块集中存放。在按名查找文件名时,只需访问存储FCB的几个块。可减少磁头移动和磁盘I/O次数。

        

        FCB与对应的文件数据块连续存储:只能逐一读入包含各个文件FCB的磁盘块,每往后找一个文件就要读一个磁盘块。总体lo次数更多,磁头移动距离更长

 


 

部分内容参考于

队列——顺序存储结构实现( 循环队列 - 不同指针指向)_一个很懒的人的博客-CSDN博客_循环队列指针

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/404.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【RHCSA】管理Linux的联网

目录 rhel8与旧版本的区别 NetworkManager的特点 配置网络 (1)使用P命令配置临时生效的网络连接 (2)修改配置文件&#xff0c;前提是需要有network服务[不推荐] (3)nmcli(命令行工具) 网络测试命令 Ⅰ、使用ping命令测试网络的连通性 Ⅱ、使用tracepath命令跟踪并显示网…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java危险品运输车辆信息管理系统b2z1o

大学毕业设计&#xff0c;一般都是自己或者几个同学一起弄&#xff0c;lunwen都是去&#xff0c;百度&#xff0c;图书馆找很多资料参考&#xff0c;&#xff08;就是把里面都了&#xff0c;自己再按照各个意思重新表达&#xff09;&#xff0c;但是前提&#xff0c;提纲要想好…

【附源码】计算机毕业设计SSM微课程服务系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

神经网络芯片的单片机,什么是神经网络芯片

1、神经网络做图像分类一定要用到gpu吗&#xff1f; GPU最大的价值一直是“accelerating”(加速)&#xff0c;GPU不是取代CPU&#xff0c;而是利用GPU的并行计算架构&#xff0c;来将并行计算的负载放到GPU上来处理从而极大的提升处理速度。GPU本质上在异构计算架构上属于协处…

Hello Word你真的理解了么?今天教我的表弟,有些感悟

&#x1f36c;博主介绍 &#x1f468;‍&#x1f393; 博主主页&#xff1a;喵的主页 ✨主攻领域&#xff1a;【大数据】【java】【python】【面试分析】 Hello world1. 编写程序2. 打开命令行3. 运行 .class 文件4. 排查错误1. 编写程序 是不是都忘了我们初学时是打开记事本的…

9-1 Kubernetes二进制部署的Prometheus实现服务发现

文章目录前言创建用户复制Token配置文件全局配置Master节点发现Node节点发现Namespace Pod发现自定义Pod发现前言 在上一章节介绍了 8-5 在Prometheus实现Kubernetes-apiserver及Coredns服务发现 基于K8s集群内部安装的Prometheus&#xff0c;添加服务发现时更加方便。Prometh…

二叉树遍历原理 | 深度优先-广度优先 | 栈-队列

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; 14天阅读挑战赛 文章目录二叉树遍历原理队列和栈区别深度优先遍历(DFS)前序遍历(根-左-右)中序遍历(左-根-右)后序遍历(左-右-根)广度优先遍历(BFS)逐层遍历(上-下 | …

软件研发人效提升之道,法,术,器,势

在华为的寒气传递之前&#xff0c;笔者已经在思考和实战如何提高研发人效。目的目标很明确: 提高软件研发人效&#xff0c;所谓的软件人效&#xff0c;简单粗暴的定义就是以最低单位人均成本&#xff0c;快速&#xff0c;高质量&#xff0c;高频率&#xff0c;安全地交付软件产…

C++笔记之bitset使用

C++笔记之bitset使用 文章目录 C++笔记之bitset使用0.进制介绍1.cppreference2.常规使用3.用法总结3.1.bitset是什么3.2.使用方法3.3.相关使用函数3.4.转换函数0.进制介绍 1.cppreference

C语言高级教程-C语言数组(五):二维(多维)数组初始化和基于数组的综合实例->帽子选购问题

C语言高级教程-C语言数组&#xff08;五&#xff09;&#xff1a;二维&#xff08;多维&#xff09;数组初始化和基于数组的综合实例->帽子选购问题一、本文的编译环境二、二维数组的初始化三、三维数组的初始化四、使用for循环求三维数组元素值的和4.1、for循环求数组元素值…

行业周期分析的主要内容,怎么分析行业生命周期

如何分析经济周期&#xff1f; 很多人认为经济周期分析很难&#xff0c;很复杂。但是作为一个投资者&#xff0c;必须了解一定的经济周期分析原理。所以今天康少就用一张图来简单讲解下经济周期的分析。 一、经济周期判断1、经济趋向繁荣&#xff1a;普通股收益将大幅提高&am…

第07篇:巧用Spring类型转换, ConverterFormatter知识点学习。

公众号: 西魏陶渊明 CSDN: https://springlearn.blog.csdn.net 天下代码一大抄, 抄来抄去有提高, 看你会抄不会抄&#xff01; 文章目录一、前言1.1 类型转换1.2 格式化输出二、Converter 类型转换2.1 Converter2.1.1 接口定义2.1.2 接口功能2.2 ConverterFactory2.2.1 接口定义…

java8特性,lambda表达式,简写的演变及应用

&#x1f36c;博主介绍 &#x1f468;‍&#x1f393; 博主主页&#xff1a;chad_chang的主页 ✨主攻领域&#xff1a;【大数据】【java】【python】【面试分析】 文章目录lambda表达式1.1.简介1.1.1.什么是Lambda&#xff1f;1.1.2.为什么使用Lambda1.1.3.Lambda对接口的要求1…

【Linux】特别篇--SMBus 协议

【Linux】特别篇--SMBus 协议一、SMBus 简介二、SMBus 与 I2C 区别三、SMBus协议分析3.1 符号含义3.2 SMBus Quick Command3.3 SMBus Receive Byte3.4 SMBus Send Byte3.5 SMBus Read Byte3.6 SMBus Read Word3.7 SMBus Write Byte3.8 SMBus Write Word3.9 SMBus Block Read3.1…

672页21万字智慧高速数据中心大数据平台建设方案

目 录 第1章 设计总述 6 1.1 项目概述 6 1.1.1 项目名称 6 1.1.2 建设单位概况 6 1.1.3 公司具备的优势 6 1.2 对项目的理解分析 7 1.2.1 项目现状分析 7 1.2.2 建设目标分析 10 1.2.3 建设内容分析 13 1.2.4 项目建设重难点分析 19 1.2.5 项目风险分析 22 1.2.6 各中心职能需求…

python控制台颜色输出设置

python控制台颜色输出设置 控制台输出内容的颜色有前景色与背景色 控制台的展示效果有限&#xff0c;并不能像前端一样炫酷&#xff0c;只能做一些简单的设置 原理 python终端的字符颜色是用转义序列控制的&#xff0c;是文本模式下的系统显示功能&#xff0c;和具体的语言无…

【C++笔试强训】第十天

&#x1f387;C笔试强训 博客主页&#xff1a;一起去看日落吗分享博主的C刷题日常&#xff0c;大家一起学习博主的能力有限&#xff0c;出现错误希望大家不吝赐教分享给大家一句我很喜欢的话&#xff1a;夜色难免微凉&#xff0c;前方必有曙光 &#x1f31e;。 &#x1f4a6; &…

操作系统的地址、数据存储和大小端问题

文章目录基本概念什么是位&#xff0c;什么是字节&#xff1f;地址总线内存地址物理地址虚拟地址寻址空间存储单元CPU位数CPU寻址大端存储和小端存储原理为什么会有大小端模式的区分基本概念 什么是位&#xff0c;什么是字节&#xff1f; 位表示的是二进制位&#xff0c;一般…

C语言中用sizeof和strlen观察数组的变化2

目录 一.前言 二.用sizeof观察字符串数组的变化 代码 运行结果 结果解释 图解 三.用sizeof观察字符数组的变化 代码 注意 运行结果 图解 注意 证明 一.前言 数组名大部分情况下是首元素的地址&#xff0c;只有两种情况除外&#xff1a; sizeof&#xff08;数组名&…

哈希桶的基本操作 || HashMap和HashSet介绍(手撕源码)

目录 前言&#xff1a; 哈希表介绍 哈希冲突 闭散列 开散列&#xff08;哈希桶&#xff09; 模拟实现哈希桶中插入和获取方法 代码实现 HashMap介绍 手撕源码 HashSet介绍 手撕源码 小结&#xff1a; 前言&#xff1a; &#x1f388;一棵搜索树的最快查找数据的时间复杂度是O(…