通州企业网站建设,百度关键词排名批量查询,网站开发一般采用什么框架,找人做网站排名优化1.调度什么时候发生#xff1a;
*正在执行的进程执行完毕 *执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等状态 *执行中调用了P原语#xff0c;从而因资源不足而阻塞 *执行中进程提出I/O请求后被阻塞 *在分时系统中时间片用完
2.调度算法#xff1a;
(1)作业调度 *…1.调度什么时候发生
*正在执行的进程执行完毕 *执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等状态 *执行中调用了P原语从而因资源不足而阻塞 *执行中进程提出I/O请求后被阻塞 *在分时系统中时间片用完
2.调度算法
(1)作业调度 *先来先服务FCFS *短作业优先SJF *优先级调度算法PSA *高响应比优先调度算法HRRN *多级反馈队列调度算法
3.堆栈
栈区(stack)由编译器自动分配释放存放函数的参数值、局部变量值等。 堆区(heap)一般由程序员分配释放若程序员不释放程序结束时可能由OS回收
4.操作系统的定义
操作系统是指控制和管理整个计算机系统的硬件和软件资源并合理的组织和调度计算机的工作和资源的分配以提供给用户和其他软件方便的接口和环境。
5.判断单链表是循环链表
双指针判断法一个slow指针一个fast指针slow指针每次走一步fast每次走两部相遇则为循环链表否则fast为NULL时退出
6.动态存储和静态存储的区别
静态存储 *在编译时对数据对象分配固定的存储位置运行时始终不变即一旦存储空间的某个位置分配给了某个数据名则在目标程序的整个运行过程中此位置就属于该数据名。 *由静态存储分配产生的数据区称为静态数据区 *静态存储分配不允许递归过程或递归调用 *静态存储分配的特点简单、易于实现
动态存储 *指在运行阶段动态的为源程序中的数据对象分配存储位置 *允许递归过程 *允许用户自由申请和释放空间 *两种动态存储方式栈stack、堆heap
7.组合逻辑电路与时序逻辑电路的区别
*组合逻辑电路的特点是任意时刻的输出仅仅取决于该时刻的输入与电路原本状态无关。 *时序逻辑电路特点是任意时刻的输出不仅取决于该时刻的输入而且还和电路原来的状态有关电路里面有存储元件用于记忆信息。
8.递归的含义
*程序调用自身的编程技巧称为递归
9.递归能不能用循环代替
*能用递归解的都可以用循环来写所有循环都是等价的 *循环比递归效率高递归使代码简单易懂
10.递归需要满足的两个条件
递归并不是简单的“自己调用自己”也不是简单的“交互调用”。它是一种分析和解决问题的方法和思想。简单来说递归的思想就是把问题分解成为规模更小的、具有与原问题有着相同解法的问题。比如二分查找算法就是不断地把问题的规模变小变成原问题的一半而新问题与原问题有着相同的解法。 有些问题使用传统的迭代算法是很难求解甚至无解的而使用递归却可以很容易的解决。比如汉诺塔问题。但递归的使用也是有它的劣势的因为它要进行多层函数调用所以会消耗很多堆栈空间和函数调用时间。 既然递归的思想是把问题分解成为规模更小且与原问题有着相同解法的问题那么是不是这样的问题都能用递归来解决呢答案是否定的。并不是所有问题都能用递归来解决。那么什么样的问题可以用递归来解决呢一般来讲能用递归来解决的问题必须满足两个条件 1、可以通过递归调用来缩小问题规模且新问题与原问题有着相同的形式。 2、存在一种简单情境可以使递归在简单情境下退出。 如果一个问题不满足以上两个条件那么它就不能用递归来解决。
11.网络的层次结构
ISO/OSI七层 物理层数据链路层网络层传输层会话层表示层应用层 Tcp/ip五层 物理层数据链路层网络层传输层应用层
12.ARP和RARP
*ARP地址解析协议透过目标设备的IP地址查询目标设备的MAC地址 (1)每个主机都有一个ARP列表缓存IP地址和MAC地址之间的对应关系 (2)当源主机要发送数据时首先检查ARP列表中是否有对应的IP地址的目的地址的主机MAC地址有就直接发送没有就以广播的形式向本子网所有主机发送ARP数据包该数据包的内容有源主机IP地址源主机MAC地址目的主机的IP地址。 (3)本网段所有主机收到ARP数据包时首先检查数据包是否有自己的IP地址如果没有忽略该数据包如果有将源主机的IP和MAC地址写到ARP列表中然后将自己的MAC地址写入ARP响应包中告诉源主机自己是它要找的MAC地址。 *RARP将MAC地址转换成IP地址 (1)将原设备和目标设备的MAC地址字段都设为发送者的MAC和IP地址发送主机发送一个本地的RARP广播能够到达网络上的所有设备在此广播包中声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址 (2)本地网段上的RARP服务器收到此请求后检查其RARP列表查找该MAC地址对应的IP地址 (3)如果存在RARP服务器就给源主机发送一个相应数据包并将此IP地址提供给对方主机使用如果不存在RARP服务器对此不做任何相应 (4)源主机收到从RARP服务器的相应信息就利用得到的IP地址进行通讯如果一直没有收到RARP服务器相应则初始化失败。 13.微信用的TCP还是UDP 视频、语音是UDP发信息是TCP
14.操作系统的目录
人们把文件控制块的有序集合称为文件目录一个文件控制块就是一个文件目录项 *文件控制块FCB为了能对系统中大量文件进行有效的管理文件块中包含了三类信息基本信息、存取控制信息、使用信息。 *索引节点解决的问题文件目录占越大量的盘块需要进行磁盘读写开销越大减少实际检索的信息量就减少移动磁头的开销提高速度。目录一般是按名检索的。而直到找到正确文件前只关心文件名不需要其他的文件描述信息。 *目录结构(1)单级目录文件最简单的文件目录在整个文件系统中只建立一张目录表每个文件占一个目录项目录项中包含文件名、文件拓展名、文件长度、文件类型、文件物理地址等信息最后还有一个状态位。 优点简单按名存取。 缺点查找速度慢不允许重名不便于实现文件共享 (2)两级文件目录为每个用户单独建立一个单独的用户文件目录主目录和用户目录 (优点提高检索目录的速度允许文件重名 缺点不利于文件共享) (3)树型目录文件 (优点层次结构清晰灵活的管理权限便于文件共享 缺点增加访盘次数复杂)
*文件共享①索引节点法 ②符号链接法适用于网络文件共享
15.什么是进程
*进程是进程实体的运行过程是系统进行资源分配和调度的一个独立单位
16.什么是死锁
*指多个进程在运行过程中因争夺资源而造成的一种僵局当进程处于这种僵持状态是若无外力作用他们都将无法向前推进
17.解除死锁的方法
①死锁预防破坏产生死锁的四个必要条件中的一个或几个 ②避免死锁使进程分配进入安全状态使用银行家算法 ③死锁检测判断系统是否出现死锁若检测到死锁则设法加以解除。
18.存储方式
(1)连续分配 ①单一连续分配系统区用户区 ②固定分区分配 ③动态分区分配空闲分区表 (2)动态分区分配算法 ①首次适应算法 ②循环首次适应算法 ③最佳适应算法 ④最坏适应算法 分页存储管理、分段存储管理、段页式存储管理
19.print参数的格式和长度
%d 十进制有符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %3d表示输出3位整型数不够3位右对齐 %9.2f表示输出宽为9的浮点数其中小数位为2整数位为6小数点占一位不够9位右对齐 %8s表示输出8个字符的字符串不够8个字符右对齐 %04d表示在输出一个小于4位的数值时将在前面补0使其总宽度为4位 %6.9s表示显示一个长度不小于6且不大于9的字符串若大于9则第九个字符以后的内容被删除。
20.递归与迭代的区别
*递归就是在运行的过程中调用自己 *迭代迭代法也称辗转法是一种不断用变量的旧值递推新值得过程
21.数据库第一二三四范式
*1NF符合1NF的关系中的每个属性都不可再分。1NF是所有关系型数据库的最基本要求 数据冗余过大插入异常删除异常修改异常 *2NF2NF在1NF的基础上消除了非主属性对于码的部分函数依赖 函数依赖在一张表中在属性X的值确定的情况下必定能确定属性Y的值那么就可以说Y函数依赖于X写作X→Y 部分函数依赖假如Y函数依赖于X但同时Y并不完全依赖于X那么我们就称Y部分依赖于X *3NF3NF在2NF的基础上消除了非主属性对于码的传递函数依赖。 *BCNF消除主属性对于码的部分依赖于传递依赖
22.双聚类算法
*算法简介:在数据矩阵A中寻找一个满足条件矩阵B1的子矩阵A1而B1是条件矩阵B的一个子矩阵。
23.启发式搜索有信息搜索
*利用当前与问题有关的信息作为启发式信息这些信息是能够提升查找效率以及减少查找次数的 启发式策略可以通过指导搜索向最有希望的方向前进降低了复杂性。通过删除某些状态及其延伸启发式算法可以消除组合爆炸并得到令人能接受的解(通常并不一定是最佳解)。 然而启发式策略是极易出错的。在解决问题的过程中启发仅仅是下一步将要采取措施的一个猜想常常根据经验和直觉来判断。由于启发式搜索只有有限的信息(比如当前状态的描述)要想预测进一步搜索过程中状态空间的具体行为则很难。一个启发式搜索可能得到一个次最佳解也可能一无所获。这是启发式搜索固有的局限性。这种局限性不可能由所谓更好的启发式策略或更有效的搜索算法来消除。一般说来启发信息越强扩展的无用节点就越少。引入强的启发信息有可能大大降低搜索工作量但不能保证找到最小耗散值的解路径(最佳路径)。因此在实际应用中最好能引入降低搜索工作量的启发信息而不牺牲找到最佳路径的保证。 https://www.cnblogs.com/ISGuXing/p/9800490.html https://baike.baidu.com/item/%E5%90%AF%E5%8F%91%E5%BC%8F%E6%90%9C%E7%B4%A2/8944170?fraladdin
24.用全局变量多还是局部变量多
一般原则是尽量少定义全局变量因为全局变量会占用更多的内存而且存在时间长
25.编译的过程
第一阶段词法分析输入源程序对构成源程序的字符串进行扫描和分解识别出一个个的单词 第二阶段语法分析在词法分析的基础上根据语言的语法规则把单词符号串分解成各类语法单位如短语、句子、程序段等通过语法分析确定整个输入串是否构成语法上正确的程序。语法分析所依据的是语言的语法规则语法规则通常用上下文无关文法描述。 第三阶段词义分析与中间代码产生对语法分析所识别出的各类语法范畴分析其含义并进行初步翻译产生中间代码这一阶段利用的是语言的语义规则使用属性文法描述语义规则。 第四阶段优化优化任务在于对前段产生的中间代码进行加工变换以期待在最后阶段能产生出更为高效的目标代码 第五阶段目标代码生成把中间代码变成特定机器上的低级语言代码这阶段实现了最后的翻译
26.线性表的定义
线性变是具有相同数据类型的n个数据元素的有限序列
27.路由器和交换机
路由器寻址、转发依靠IP地址 交换机过滤、转发依靠MAC地址
路由器内有一张路由表里面有它的寻址信息它收到网络层的数据报后会根据路由表和路由选择算法将数据报转发到下一站。 交换机内有一张MAC表里面存放着和他相连的所有设备的MAC地址它会根据收到的数据帧的首部信息的目的MAC地址在自己表中查找有就转发没有就放弃 交换机用于局域网内网的数据转发 路由器用于连接局域网和外网
我们每个人相当于主机路由器相当于快递员宿管大爷相当于交换机学校是一个局域网 快递员根据学校地址IP把包裹送到学校再根据公寓号子网IP把快递交给这个公寓的宿管大爷宿管大爷根据你的名字MAC交给你
28.TCP的四种拥塞控制算法
1.慢开始由小到大逐渐增大拥塞窗口数值每次以2的倍数增大拥塞窗口。 2.拥塞避免当拥塞窗口到达门限值ssthresh时开始进行拥塞避免拥塞窗口加法增大 3.快重传发送方收到了累计3个连续的针对某一报文段的重复确认立刻重传下一个报文段。 4.快恢复发送方知道现在只丢失了个别报文段于是执行快恢复算法发送方调整门限值ssthreshcwnd/2同时设置拥塞窗口cwndssthresh并开始执行拥塞避免算法
29.TCP为什么三次握手
为了实现可靠数据传输TCP协议的通信双方都必须维护一个序列号以标识发送出去的数据包中哪些是已经被对方收到的三次握手的过程即是通信双方相互告知序列号起始值并确认对方已经收到了序列号起始值的必经步骤 如果只是两次握手至多只有连接方的起始序列号能被确认另一方选择的序列号则得不到确认。
30.数据结构的顺序结构
顺序表、二叉树
31.面向对象中的封装、继承、多态
*封装对一个类将属性和方法封装在类中对外隐藏实现细节数据在内部完全自由使用外部对数据进行访问需要增加访问限定。 *继承一种代码重用手段我们对一个现有类上想扩展出一些东西的时候不需要重复编写上面的代码而是采用继承的思想在派生的子类添加属性和方法。 *多态接口重用重写父类实现的方法利用虚函数和虚表。
32.局部变量和全局变量在内存中的存储位置
全局变量全部存储在静态存储区局部变量保存在栈中也就是动态存储区
33.最短路径问题
单源最短路径迪杰斯特拉算法假定初始点为A首先设定两个集合S和TS集合初始值为{A}S集合包含已求出的最短路径点的集合和相应最短路径长度T集合是还未求出最短路径的定点和该顶点到起点A的距离。每次从T集合中找出到起始点A路径最短的顶点加入到S集合中然后更新U中的顶点和顶点对应的路径。多次重复直到遍历完所有顶点。
多源最短路径floyd算法求每对顶点间的最短路径先利用一个二维数组记录各个点之间的距离然后选择一个中介节点并更新距离用最短距离代替大距离然后更换中介节点再找最短距离并更新。
34.DHCP协议
DHCP动态主机配置协议由服务器控制一段IP地址范围客户机登录服务器时就可以自动获得服务器分配的ip地址和子网掩码。 发现阶段-提供阶段-选择阶段-确认阶段
35.访问网站的过程
①域名解析成ip地址 ②与目的主机进行tcp链接 ③发送与收取数据HTTP访问过程 ④与目的主机断开连接
36.C的三种继承方式
公有继承、私有继承、保护继承 *公有继承①基类中的public仍为public ②基类中的protected仍为protected ③基类中的private仍为private *私有继承①基类中的publicprotected变为private ②基类中的private仍为private *保护继承①基类中public变为protected ②基类中的protected仍为protected ③基类中private仍为private
37.C语言和C语言区别和联系
*C是面向过程的语言而C是面向对象的语言 *C和C在动态分配内存方面存在差异C使用malloc/free函数而C使用除此之外还有new/delete关键字 *C语言中没有class只有structC中两者都有。class的默认访问修饰符是private而struct是public *C支持函数重载而C不支持函数重载这是由于两者的名字修饰不同 *C有引用而C没有引用
38.面向对象的好处
*将对象进行分类分别封装他们的数据和方法方便了函数、变量、数据的管理。方便方法调用。 *让编程思路更加清晰简洁减少了很多冗余变量的出现。
39.重载和重写
*重载传入不同的参数会调用不同的函数。 函数或方法有相同的名称 参数列表不相同 *重写对父类实现的方法进行重写 函数名参数和返回值都相同
40.数据库锁有几种
共享锁多个实物可封锁一个共享页任何事物都不能修改该页通常是该页被读取完毕共享锁立即被释放 排它锁仅允许一个事务封锁此页其他任何事务必须等到排它锁被释放才能对该页进行访问排它锁一直到事务结束才能释放 更新锁用来预定要对此页施加更新锁它允许其他事务读但不允许再施加更新锁或排它锁当被读取的页将要被更新时则升级为排它锁更新锁一直到事务结束时才能被释放
41.数据库的事务
事务指逻辑上的一组操作组成这组操作的各个单元要么全成功要么全不成功