zoukankan      html  css  js  c++  java
  • 软考题型

    一、操作系统


     

    题型一:页面淘汰问题

    地址映射过程中,若在页面中发现所要访问的页面不在内存中,

    则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,

    则操作系统必须在内存选择一个页面将其移出内存,

    以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。

    场见的页面置换算法:

    最佳置换算法:

    最佳置换算法(OPT)(理想置换算法):从主存中移出永远不再需要的页面;如无这样的页面存在,则选择最长时间不需要访问的页面

    eg:

     

    如上图:要访问页面7时,缺页,直接将7加进来,要访问0时缺页,直接将0加进来,1同理,访问2时7是最久访问过的,所以淘汰7将2加到7的位置

    当第6列,要访问3时,产生缺页,这里面页面都被访问过,1是长时间未被访问,所以直接淘汰1,将3加入到1的位置

    2.先进先出置换算法(FIFO):是最简单的页面置换算法。这种算法的基本思想是:当需要淘汰一个页面时,

    总是选择驻留主存时间最长的页面进行淘汰,即先进入主存的页面先淘汰。其理由是:最早调入主存的页面不再被使用的可能性最大

    3.最近最久未使用(LRU)算法:这种算法的基本思想是:利用局部性原理,根据一个作业在执行过程中过去的页面访问历史来推测未来的行为

    它认为过去一段时间里不曾被访问过的页面,在最近的将来可能也不会再被访问。

    所以,这种算法的实质是:当需要淘汰一个页面时,总是选择在最近一段时间内最久不用的页面予以淘汰

    二、零散知识点


     

     1> FTP 21为控制口、20为数据口

    三、数据结构


     

    3.1 图的遍历

    分为深度优先遍历和广度优先遍历

    深度优先遍历:无向深度遍历:先沿着一个方向进行遍历,将已经遍历的标记,并入栈,访问到底后,再依次出栈,沿着其他方向重新执行以上操作    

                             有向深度遍历:

    广度优先遍历:从图中某顶点v出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,

    并使得“先被访问的顶点的邻接点先于后被访问的顶点的邻接点被访问,直至图中所有已被访问的顶点的邻接点都被访问到。

    如果此时图中尚有顶点未被访问,则需要另选一个未曾被访问过的顶点作为新的起始点,

    重复上述过程,直至图中所有顶点都被访问到为止。

    广度优先遍历使用队列

     3.2 霍夫曼编码

     首先从所有字符中取出最小权值作为左右子树

    第一步:取出10,14构成新树

     

    第二步,将新树的节点构成新集合(40、16、24、20)

    取出16、20

     

     

    第三步,取出新节点(40、24、36)

     

     取出新节点(40、60)

     

     

    替换成字母,加上权值

     

    c:111

    a:0 

    d:110

    e:101

    所以编码为1110110101

    第二问是求压缩比:

    压缩前是定长编码:每个字符用3位编码,压缩后长度为

    1*40%+3*10%+3*16%+3*14%=2.2

    压缩比为(3-2.2)/3=27%

    四、网络


     

    4.1 主机地址的计算

    155.32.80.192/26 前26位是网络地址,后6位是主机地址

    则主机地址的个数为2的6次方减去2(0.0.0.0,255.255.255.255)=62

    表示的主机地址:155.32.80.193-193+61

    4.2 IPv6的地址空间是IPv4的2^96倍

    五、编译器


     

    5.1 编译程序中接收以单词为单位的输入,并产生有关信息供以后各阶段使用。算符优先法、LR分析法和递归下降法

    是几种常见的语法分析技术。LR分析法主要有SLR(1)、LR(0)、LR(1)和LALR(1)等4种,其中LR(1)的分析能力里最强

    LR(0)的分析能力最弱

    5.2 编译器的工作工程分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成

    词法分析:是计算机科学中将字符序列转换为单词(Token)序列的过程

    词法分析器的任务是把源文件的字符流转换成记号流

    语法分析主要检查语法,括号等上下文无关

    语法分析器根据语法规则识别出记号流中的结构(短语、句子)并构造一棵能够正确反映该结构的语法树

    语义分析,上下文有关

    六、UML


     

    6.1状态图:

    状态图(Statechart Diagram)主要用于描述一个对象在其生存期间的动态行为

    表现为一个对象所经历的状态序列,引起状态转移的事件(Event)

    以及因状态转移而伴随的动作(Action)。

    一般可以用状态机对一个对象的生命周期建模,状态图用于显示状态机(State Machine Diagram)

    状态有Opened、Closed、Locked。

    事件有 Open、Close、Lock和Unlock。

    七、加解密


     

    7.1

    公开秘钥加密算法:非对称加密算法,是指加密秘钥和解密秘钥完全不同,其中一个为公钥,另一个为私钥

    并且不能从一个推导出另一个

    非对称加密算法有:ECC、DSA、RSA

    对称加密算法:DES、AES、IDEA、RC-5

    八、软件工程


     

    8.1 常见的内聚

    1)功能内聚:如果模块内所有元素完成一个功能,则为功能内聚

    2)顺序内聚:各元素密切相关于某一个功能,而且处理元素是顺序执行

    3)通信内聚:模块中的所有元素都使用同一输入,或产生同一输出

    4)过程内聚:元素密切相关,还要按一定的次序执行

    5)时间内聚:模板中包含的元素必须在同一时间内执行

    6)逻辑内聚:模块完成的任务在逻辑上属于相同或相似的一类

    7)偶然内聚:如果同一模块由若干个毫无相关的处理元素组成,则叫偶然内聚

    8.2 软件模型

    CMM(软件能力成熟模型)分为五个等级,一级最低,五级最高

    CMMI(软件能力成熟度模型集成)将CMM模型结合在一起

    8.3常见的耦合

    非直接耦合:两个模块没有直接关系,他们之间的联系完全是通过主模块的控制和调用来实现的

    数据耦合:两个模块间有调用关系,传递简单的数据

    标记耦合:两个模块间传递的数据结构,如数组

    8.4软件维护工具

    软件维护工具:版本控制工具、文档分析工具、开发信息库工具、逆向工程工具、再工程工具

    九、组成原理


     

    9.1 霍夫曼编码

    1)求字符权值

    9.2 内存编址问题

     解题思路:

    先算出十六进制的差:CFFFFH+1-A0000H=30000H

    将30000H转成10进制再除以1024=192字节

    除以1024的原因是,十六进制计算的结果是位,要转换成字节

  • 相关阅读:
    说一说前端路由与后端路由的区别
    HTTP 8种请求方式介绍
    JavaScript 运行机制以及Event Loop(事件循环)
    常见的数据结构
    JS中常见的几种继承方法
    JS异步编程
    js中的数据类型,以及如何检测数据类型
    js面试题之手写节流函数和防抖函数
    前端面试题
    (八) SpringBoot起飞之路-整合Shiro详细教程(MyBatis、Thymeleaf)
  • 原文地址:https://www.cnblogs.com/anyanpeng/p/15430225.html
Copyright © 2011-2022 走看看