Fragmentary thoughts(408备考碎碎念)

1.做一切涉及存储量、带宽、速率的计算题目两大注意点:第一是区分大B字节和小b二进制位,第二是区分K的1000进位(速率)和1024进位(存储容量、文件大小),尤其是利用数据量求速率的题要记得转换进位法则

2.做一切涉及寄存器或立即数数值计算的题目,首先关注:结果要求是二进制、十进制还是十六进制的形式,要求是机器码还是真值,数据是否溢出,存储形式是大端还是小端,位数不统一的时候是否需要扩展

3.做计网涉及速率和数据量的计算题,关注是否要去掉各级协议附加内容只算有效数据;关注“端到端时延”和“RTT”的文字叙述区别(代入数值计算之前小声默念一遍题目条件)

4.做一切和存储相关的题,第一时间找关于编址方式的信息,否则可能从头错到尾;关注寻址方式直接或几次间接;偏移寻址的加减法和间接寻址哪个先操作

5.二叉树性质相关计算题:注意区分满二叉树、完全二叉树两个概念。叶子结点数量等于度为2的节点数加1和第k层上至多2^(k-1)个结点的性质有一个共同的限制条件:二叉树非空。

6.十六进制结果随手写上H或者0x就像不定积分随手写上C一样自然

7.Cache标记项关注脏位(写回法);替换控制位/算法位(时间、使用情况);有效位(无条件,每次访Cache必查)。算法位的位数是组的路数对2的log

8.“把进程唤醒”不是指“给某个进程处理机”,而是特指“某个进程从阻塞态变为就绪态”

9.扩展操作码vs定长操作码:扩展的op不能全1(类比哈夫曼编码);定长操作码的指令数目可以放心地写2的n次方

10.指令设计的格式是操作码+寻址特征+形式地址,牢记这个格式,在读指令和设计指令系统的题目中不要漏项,尤其寻址特征很容易忽略

11.计算相对寻址指令跳转位置时,要格外注意PC的自增功能机制。其中PC自增值是指令字长除以内存编址单位。换一种表达方式,相对寻址的A实质上是以下条指令(而不是本条地址)在内存中首地址为基准位置的偏移量

12.区分以下概念:直接寻址/间接寻址(主存相关) vs 寄存器寻址/寄存器间接寻址。注意寄存器寻址的操作数是寄存器的编号,位数由系统中相关寄存器决定。概念上不难但实际做题干扰性极强

13.在一地址的运算指令中,通常第一操作数在累加器中,第二操作数由指令地址码给出,运算结果在累加器中

14.三种“相对寻址”的比较:基址寻址(BR)适用于多道程序设计、常用于为程序或数据分配空间;变址寻址(IX)主要用于处理数组问题;相对寻址(PC)用于转移指令和程序浮动

15.CF和OF:CF是无符号数溢出标志,OF是有符号数溢出标志(有符号数相加相减导致CF=1也无意义)。

16.十字链表是有向图的存储结构;邻接多重表是无向图的存储结构

17.特殊矩阵的存储中(KMP算法也需注意),重点关注矩阵和数组的下标是从0开始还是从1开始(通常矩阵1数组0)

18.图的邻接矩阵表示唯一,其广度优先生成树也是唯一的;邻接表表示不唯一,广度生成树也不唯一

19.中缀表达式转后缀表达式的简便手动算法:a.按运算符优先级对所有运算单位加括号;b.运算符移到括号后;c.去除括号

20.指令字长是指令中二进制代码位数;机器字长是CPU一次能处理的数据长度(通常等于内部寄存器位数);存储字长是一个存储字长度

21.计算机中用户可见的寄存器:通用寄存器组、PSW、PC、ACC;不可见:MAR、MDR、IR、DR(拓展:cache、控制存储器、锁存器、暂存器)

22.运算器包括算数逻辑单元、暂存寄存器、累加器、通用寄存器组、PSW、移位器等;控制器包括指令部件(PC、IR、指令译码器ID)、时序部件、微操作信号发生器(控制单元)、中断控制逻辑等

23.带符号整数加减运算的溢出判断规则:若加法器两个输入端符号相同,且和输出端的符号不同,结果溢出;或加法器完成加法操作时,次高位进位和最高位进位不同,结果溢出

24.答题易忽视:IP数据报分片除了最后一片外的所有报片有效载荷都是8B的倍数

25.进程的程序段是可以被多进程所共享的(多个进程可以运行同一个程序)

26.进程在运行时发生异常事件,程序无法正常运行,此时要终止进程(常见需终止的问题清单:存储区越界、保护错、非法指令、特权指令错、运行超时、算数运算错、I/O故障)

27.I/O接口主机侧的数据线传输的是读写数据、状态字、控制字(别以为是状态线和控制线在传输)、中断类型号,与数据缓冲寄存器和状态/控制寄存器相连;地址线给出要访问的I/O接口中寄存器的地址;控制线传输读写信号、仲裁信号和握手信号

28.IP数据报在分片之后“总长度”字段指的是分完之后一片的首部加数据长度,而不是分片前的分组长度

29.关注规格化浮点数(自设计)和IEEE754浮点数的规则差别

30.总线的猝发传输要消耗一个周期用来传地址。考虑存储器准备数据和传送数据两项时间

31.负数原码转补码的最快方式:从右往左找到第一个1,它左边所有的数值位取反,自己和右边一串0都不变

32.“捎带确认”默认确认帧的长度和发送帧相等

33.TCP拥塞避免算法中,拥塞窗口cwnd增加的时机是收到ack。比如RTT为10ms,慢开始40ms后cwnd从1增长到16(不考虑其他因素)

34.中断向量是中断服务程序的入口地址,而中断向量的地址是中断服务程序入口地址的地址。诸如此类表达注意避坑。补充一条,系统中所有中断向量集中存放在存储器某区域,利用中断向量寻址服务程序属于硬件方式,还可以利用软件查询法执行此功能

35.字符设备不是“可寻址到字节”的设备,而是数据存储传输以字符为单位的设备;传输速率较低不可寻址常用中断驱动。字符设备都是独占设备,而共享设备必须是可寻址可随机访问的设备;一段时间内(而不是同一时间内)允许多进程访问。

36.DRAM采用传两次地址的策略,地址线数量是正常的一半

37.工作集是指窗口大小,不要和驻留集混淆

38.网络层出现的各协议总结(不一定是网络层的协议):RIP是应用层协议,使用UDP;OSPF是网络层协议,直接使用IP数据报传输;BGP是应用层协议,使用TCP;NAT是传输层协议,它看到了端口号;ARP是网络层协议,它看到了IP地址;DHCP是应用层协议,使用UDP;ICMP是网络层协议,以IP报文形式存在

39.在IPv4路由器上具有报文分片和重组的功能,根据下一跳的MTU自动分片,到达目的地后由目标主机进行重组;IPv6网络取消了路由器的报文分片和重组功能,这个功能由源主机来承担,它可以发送MTU探测数据包进行最小MTU探测,然后按照最小MTU发送数据包

40.注意:IPv4的CIDR子网号和主机号一样,都不能全1或全0(子网号暂存在争议,取决于路由器的路由选择软件是否支持,需谨慎使用)

41.区分概念:存储时间(周期)为连续两次启动同一存储器所需最小时间间隔;存取时间(包括读出时间和写入时间)是从上一次启动存储器到完成读写操作为止,一般小于存储周期

42.DRAM存储器的刷新是存储器中所有芯片的相同行同时进行刷新,而不是按芯片顺序完成

43.数据按边界对齐时,结构体内部的成员起始地址mod该成员长度为0;结构体长度是有效对齐值的整数倍

44.奇偶校验码:所谓“奇偶”指整个校验码(有效信息+校验位)二进制1的数量,而不是添加校验位前有效信息1的数量

45.模4补码:存储时只需要一个符号位(正常的数值双符号相等),双符号位只在ALU中采用

46.原语:通过关中断和开中断两个特权指令实现其原子性

47.Prim退出的标准是所有点都被连上,适用于求解边稠密图;Kruskal退出的标准是连通分量为1,适用于求解边稀疏而点较多的图,常用堆存放边的集合,用并查集描述生成树

48.二叉树不是有序树。有序树的结点次序是相对于另一结点而言的,当只有一个节点时无须区分次序,但二叉树中无论孩子数量是否为2都有区分左右

49.进程实体的组成:PCB、共享正文段(二进制代码和赋值常量)、数据堆段(动态分配的存储区)和数据栈段(临时使用的变量、函数调用常量)

50.路由器交付可以分为直接交付和间接交付。直接交付不涉及路由器,要求发送站和目的站在同一网段内;间接交付的最后一个路由器采用直接交付方式

51.多道程序的“多道”是指内存中同时存放多个可供调度的作业,常与高级(作业)调度放在一起考,在内存范围内嵌套低级(进程/处理机)调度的计算。遇到此类题目先静心想好结构

52.被剥夺时间片的进程要放在当前就绪队列尾部,新进程也放在队尾。入队时间顺序决定调度顺序,这类题目可能会挖坑,遇到计算题一定要把时序图和队列都在草纸上画得一清二楚,用不了几分钟

53.微指令设计时注意两点:第一是指令的操作码并行性(字段直接编码:互斥同段相容异段;直接编码:一位一条微指令);第二是分段时每个字段留出一个“不操作”编码(如8种互斥操作需要4位而不是3位)

54.运算器通用寄存器用于暂存中间数和中间结果,如ACC、MQ(乘商寄存器)、X(操作数寄存器)、IX、BR。其中前三者必须具备

55.在K、M、G、T之上:P - 10^15;E - 10^18;Z - 10^21

56.循环冗余码CRC检错重要特性:具有r位检测位的多项式可检测出所有小于等于r的突发错误;长度大于r的错误逃脱的概率是1/(2^r)

57.UDP的校验和计算中使用的“反码运算求和”,首先对参与求和的所有行数据所有内容取反,累加(有进位)。再检查最高位是否有进位,若有,结果要加1。最后对运算结果按位取反得到校验和(检验报文时若无差错累加的结果是全1否则有差错可丢弃)

58.解释程序的特点是“解释一句,执行一句”;编译程序则是先翻译再执行,二者速度对比是编译更快(循环中解释程序需多次重复)。答题时注意细节:“编译不仅仅包含高级语言到汇编语言,也可以直接一步到位到机器语言”

59.Cache-主存层次主要解决CPU和主存速度不匹配的问题,数据交换由硬件自动完成,对程序员透明;主存-缓存层次主要解决存储系统容量问题,数据交换由硬件和操作系统共同完成

60.三种总线结构:单总线结构I/O和主存共用一条地址线,主存I/O统一编址;双总线把I/O单独分出来;三总线把DMA总线分出来(但任意时刻只能使用三条线中的一条)

61.OSI两个不常见到的层次:表示层(数据格式变换、加密解密、压缩和恢复);会话层(两个进程建立、管理和终止会话,有序传输数据,使用校验点使通信失效时继续恢复通信实现数据同步)

62.TCP/IP下两层名字为“网际层”和“网络接口层”

63.SSD的访问以页为单位,写时擦除以块为单位。磁盘地址是柱面-盘片-扇区;SSD地址是闪存芯片-块-页

64.总线性能指标:注意区分时钟频率和工作频率别看花眼,分别是时钟周期/传输周期的倒数

65.I/O三种方式对比:程序查询方式中,CPU和设备、传送和主程序都串行工作;中断方式中,CPU于设备并行工作,传送和主程序串行工作;DMA方式中都并行

66.超标量流水技术:每个时钟周期内同时并发多条指令(CPI小于1);超流水线技术:缩短原来流水线的处理器周期;超长指令字技术:由编译程序将多条指令组合成一条指令

67.B树高度默认不包括失败结点层

68.散列表:除留余数法表长为m,除数p的最佳值是不大于m但最接近或等于m的质数

69.系统打开文件表表项:索引号、FCB、打开计数;用户打开文件表表项:索引号、打开方式(读写权限,可以每个进程互不相同)、读写指针(下一次读写开始位置,由seek设置)、系统打开表项索引

70.用户源程序变成内存可执行程序的三个步骤是编译-链接-装入;链接形成逻辑地址、装入形成物理地址;静态重定位适用于早期批处理,在进程装入一次完成,整个运行期间不能动;动态重定位只在运行时进行地址转换,需要重定位寄存器支持

71.简单选择排序、希尔排序、快速排序、堆排序都是不稳定的(归并排序是三种高效算法中唯一的稳定算法)(p.s.外部排序是归并思想)

72.简单选择排序、冒泡排序、堆排序每次可以选出一个放在最终位置的元素,而快速排序每次确定位置的可能不只一个,所以说“快排每次能取出一个元素放在最终位置上”的表述,尤其是在其他三种出现在其他选项里面的时候,可能是错的。

73.GBN和SR重传机制:二者合称“连续ARQ协议”GBN不容忍失序,而SR只重传未确认的帧;GBN序号2^n但窗口2^n-1

74.归零编码中间跳变的是1;NRZ(非归零)是最直观的1高0低;NRZI(反向非归零)和差分Manchester都是0跳1不跳

75.临界区互斥机制四原则的名称分别为:空闲让进,忙则等待,有限等待,让权等待(前三个必须实现);死锁产生的四个必要条件的名称分别为:互斥条件,不剥夺条件,请求并保持条件,循环等待条件

76.理解“时间局部性”和“空间局部性”:遍历数组的操作有空间局部性(顺序访问)但没有时间局部性(每个元素只被遍历一次);而for循环体的空间(循环体内指令连续存放)和时间局部性(内循环体多次重复执行)都好。

77.本地广播地址全1,路由器不转发,只要在同一链路上无条件收到;直接广播地址可指定任一LAN,主机号全1

78.五段流水线中第二段ID除了译码还可读寄存器,第三段EX除了执行还有计算地址。所以连续指令的寄存器数据相关需要插三条nop

79.汇编指令函数分析题注意栈指针上推下拉、调用前后的参数传递

80.文件内部的隐式链接方案格外注意块尾指针有空间,可能影响到最大文件的限度、访问物理块数量等计算。连续分配fcb项是首块物理块号和块数;隐式链接是首末块号

81.文件连续分配可随机读写,不适合文件拓展;隐式链接不可随机读写但可拓展;显式连接和索引分配既可随机读写又可拓展;FAT表常驻内存

82.有效CPI只计算执行一条指令的时钟周期数,不考虑存储器存取延迟

83.电路交换只要建立连接直接可以传数据,一切和分组相关的信息全是多余的

84.数据相关的“写后读”的英文缩写是“RAW”,即read after write,中英语序不一样。WAR同理

85.Cache的字地址结构是“组号+块内地址”,由于组内是相联存储器,不需要定位到组内哪一行

86.散列表的查找效率取决于三个因素:散列函数、处理冲突的方法和装填因子,和表长无关;开放定址时不能随便删除表中某元素只能标记为删除状态,否则搜索路径可能中断

87.直接插入、冒泡和快排的效率和初始状态有关(注意简单选择算法一直都是n^2)

88.二叉排序树是每个结点的值都要比左子树所有节点值大,比右子树小;而不是仅仅处于左右孩子中间(否则可能出现12435的错误排序)

89.线程共享进程逻辑地址空间,但他们拥有自己的栈空间

90.常见应用层协议:FTP数据连接-TCP-20;FTP控制连接-TCP-21;TELNET-TCP-23;SMTP-TCP-25;DNS-UDP-53;TFTP-UDP-69;HTTP-TCP-80;POP3-TCP-110;SNMP-UDP-161

91.SRAM和DRAM都是易失性存储器;DRAM是破坏性读出但SRAM不是;“随机存储”有时候是不能用于一切ROM的,注意CD-ROM其实不是ROM是光盘存储器

92.变址寻址的加减法操作比一次间接寻址的访存通常要慢一些

93.总线上,地址、控制和状态的传输都是单向的,数据是双向的

94.程序查询I/O完全由软件方式实现;中断方式通过程序传送但中断处理需要相关硬件;DMA完全由硬件控制数据交换;通道采用软硬件结合

95.固态硬盘写慢(先擦后写)读快(随机访问)

96.SCAN调度(电梯调度)双向扫描;C-SCAN单向扫描,两种算法都默认双向不触底(LOOK和C-LOOK

97.路由表填写时,无明确标识信息的“互联网”可以填全0的默认路由

98.在随机访问的Flash半导体存储器中,FCFS调度策略比C-SCAN更高效,无需考虑寻道时间和旋转延迟,可以直接按I/O请求先后顺序服务

99.CSMA/CD计算有效传输速率必须考虑四个时间:甲传输数据帧+数据帧传播到乙+乙传输确认帧+确认帧传播到甲。滑动窗口流水线机制的链路利用率=(n*数据帧传输时延)/(RTT+数据帧传输时延+确认帧传输时延)

100. ip分组经过路由器,TTL和首部校验和必改变;如果路由器需要NAT,源ip改变;如果分组长度超过链路MTU,总长度、标志、片偏移字段也会发生变化

101. ip报头标志的三位中,第一位空,第二位DF,第三位MF;tcp报头标志六位顺序分别是URG、ACK、PSH、RST、SYN、FIN

102. 子程序调用只保存程序断点,但中断调用不仅需要保护PC还要保护PSW(中断处理最重要两个寄存器是PC和PSW)

103. 多叉哈夫曼树必须考虑到权为0的虚叶结点

104. 交换机的最大优点是用户可以独占而不是共享带宽,分为直通式(只查看地址)和存储转发式
105. I/O端口异步传输一个ASCII字符需要考虑起始位、停止位和校验位

106. 物理格式化是磁盘分扇区,每个扇区采用特殊数据结构包括校验码;逻辑格式化是创建文件系统
 

  • 6
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Once in a while a book comes along that covers an area of development that has previously been largely ignored. Both MySQL and Perl are well documented in several tutorials, but in-depth coverage of Web development using the combination of the two is rare. MySQL and Perl for the Web zeroes in on this interesting pairing, illustrating practical application development possibilities using this popular duo. The book is perfect for developers of Web sites running on Apache on Unix. Loyalties vary in terms of operating systems, Web servers, and scripting languages, but those who find their home in the Unix and Perl environments will find this book right up their alleys. The target audience is developers somewhat familiar with Perl and the Unix-based Web server environment, but you'll find the book illustrative even if your knowledge is sketchy. After showing how to make database connections using Perl and MySQL, author Paul DuBois dives into some useful real-world examples to help you build your skills. He shows how to implement a simple to-do list application, an online product registration site, contests, online polls, image databases, an online greeting card service, and more. There is also excellent coverage of search facilities and session management. The sample code for the applications in this text is presented in small pieces in context with the discussion; most of the space is devoted to explanations of the issues and implementation. All of the code is available, however, from the book's companion Web site. This tutorial is an excellent way for Perl developers to move to the next level of development and make the most of some powerful, free tools. --Stephen W. Plain Product Description MySQL and Perl for the Web provides a much-needed handbook for database and Web developers seeking an extensive and detailed guide for using the combination of MySQL and Perl to build dynamic and interactive database-backed Web sites. It shows how to use Perl's DBI database access module, pairing it with with the CGI.pm module that allows Web pages and forms to be generated and processed easily. These tools provide developers with a solid foundation for creating applications that incorporate database content to create dynamic, up-to-date Web sites. The book employs a practical learn-by-doing approach that demonstrates development techniques by building complete applications, not just fragmentary pieces. It shows what to do at each step of the way during the process of building live, working examples. Applications are fully explained so you can understand how they work and apply the techniques they illustrate to your own projects.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值