我们可以把路由器比作网络世界的骨架,我们之所以能够在网络世界里畅游,很大程度上是得益于这个铁盒子。 自: 路由器硬件结构 1、 主要硬件组成 硬件:中央处理器(cpu)、内存、接口、控制端口、等物理硬件和电路 软件:路由器的IOS系统 2、 中央处理器(CPU) Cisco路由器主要采用Motorola68030和Orion/R4600 主要负责路由器的配置管理和数据包的转发工作 3、 只读内存(ROM) 只读内存(ROM ,Readly Memory) 只能读取而不能写入。用来储存厂
2024-11-28在看一下之前正则的语法的 BNF 范式 group ::= ("(" expr ")")* expr ::= factor_conn ("|" factor_conn)* factor_conn ::= factor | factor factor* factor ::= (term | term ("*" | "+" | "?"))* term ::= char | "[" char "-" char "]" | . 上一篇构造了 term 的简单 NFA 构造复杂的 NFA factor 根
2024-11-28模拟测试程序,从客户端向服务器发数据,人工控制服务器收数据。当客户端发了一部分数据后,无法再发送,此时服务器开始每次收取1K。 按照常理推断,服务器收取1K后,客户端应该能够继续发送数据,但实测观察发现,客户端还是无法发送数据,直到服务器收取了一定数据量后,客户端才能够继续发送。 tcp抓包如下: 11:42:40.217984 IP localhost.6379 > localhost.28944: . ack 65665 win 0 <nop,nop,timestamp 1816613
2024-11-28首次适应算法比较三次,最佳适应算法比较四次,最坏适应算法比较两次,所以在这种情况下最坏适应算法最好。 最后用程序简单验证一下发现结果正确
2024-11-28一.字符编码 文本数据可以由各种各样的字符构成,因计算机只认识二进制数据0和1(字符编码的作用),所以给每个字符按照特定的字符编码体系规则(这个体系规则称之为字符集)分配了一个数字,我们称之为“字符编码”。字符集有ASCII字符集(最初只是美国自用)、Unicode字符集(后来越来越多国家也开始用计算机,ASCII不够用了)等等。 如上图 ASCII 码表所示,在使用了 ASCII 编码的计算机中,就会把 NIKKEI 处理成“78 73 75 75 69 7
2024-11-281.信号概念 信号是一种软件中断,通知程序某种事件的发生。常见的信号有SIGABRT(当进程调用abort函数的时候自动发送), SIGALRM(当timer被触发的时候自动发送),等等。 下面的情况可以产生信号: 按下CTRL+C产生SIGINT硬件中断,如除0,非法内存访问(SIGSEV)等等Kill函数可以对进程发送信号Kill命令。实际上是对Kill函数的一个包装软件中断。如当Alarm Clock超时(SIGURG),当Reader中止之后又向管道写数据(
2024-11-28转载自: 一.IDE基础配置 1.字体 VC6中“Tools→Options→Format→Font”配置字体;VC2005中“工具→选项→环境→字体和颜色”配置字体。 编写代码一般采用,等宽点阵(位图)字体,相对矢量字体而言具有兼容性好和显示清晰的优点。常用的编程等宽字体包括Fixedsys(VC6和notepad御用字体)、Consolas、YaHei Mono。 VC6默认可选字体只有Fixedsys和Terminal,可通过修改注册表来改字体,在HKEY_CURRENT_USER/S
2024-11-281、背景 通常会有这样的场景,开发人员在Windows编写代码,然后放在linux环境编译,我们通过mount命令就可以实现将代码直接挂到linux环境上去,使Windows上的共享文件夹就像linux环境中的一个文件夹。 2、在Windows上共享文件夹 1. 选择要共享的文件夹 --> 右键-->属性->共享选项->共享: 选择Everyone,这样任何用户都可以访问。 注意:默认情况下Windows共享文件夹只有为计算机设置了密码才能共享。解决这个问题可以有两种方式: 1.老老实
2024-11-28-->电源打开 -->加电自检 -->寻找启动盘(软盘则检测0面0磁道1扇区,发现以0xAA55结束,则BIOS认为是一个引导扇区) -->BIOS将引导扇区512字节的内容装载到内存0000:7c00处,跳转到0000:7c00处,将控制权交给引导代码
2024-11-28一、Linux“虚拟内存”管理数据结构 struct vm_area_struct { struct mm_struct * vm_mm; // vm_area_struct的上层结构,一个进程只有一项 unsigned long vm_start; // 虚拟地址区间上界(包含) unsigned long vm_end; // 虚拟地址区间下界(不包含) struct vm_area_stuct * vm_next; // 同一个进程所有虚拟地址区间
2024-11-28