每日练习(8)

来源:互联网 发布:女子不孕不育网络咨询 编辑:程序博客网 时间:2024/05/19 23:59

C++

  #include <iostream>    using namespace std;struct Node{    int size;    char data[0];};//以整个结构体来算data{0]所占空间为0//以单个data[0]来看data[0]所占空间为1//柔性数组//柔性数组, 它只能放在结构体末尾, 是//申明一个长度为0的数组,就可以使得这个结构体是可变长的。对于编译器来说,此时长度为0的数组并不占用空间,因为数组名本身不占空间,它只是一个偏移量, 数组名这个符号本身代 表了一个不可修改的地址常量 (注意:数组名永远都不会是指针! ),但对于这个数组的大小,我们可以进行动态分配 请仔细理解后半部分,对于编译器而言,数组名仅仅是一个符号,它不会占用任何空间,它在结构体中,只是代表了一个偏移量,代表一个不可修改的地址常量!//对于0长数组的这个特点,很容易构造出变成结构体,如缓冲区,数据包等等://注意 : 构造缓冲区就是方便管理内存缓冲区, 减少内存碎片化, 它的作用不是标志结构体结束, 而是扩展//  柔性数组是C99的扩展,简而言之就是一个在struct结构里的标识占位符(不占结构struct的空间)int main(){    Node n;    cout << sizeof(n) << endl;    cout << sizeof(n.data[0]) << endl;    return 0;}

2.C语言函数feof(fp)的函数返回值, 如果文件结束,返回非0值,否则返回0
3.int fun(int *p[4])
int **a指针指向一个地址,地址中存放的内容也是指针
4.
char *str = “microsoft”; return str == “microsoft”
return “microsoft” == “microsoft”
比较的是字符串的地址

网络基础
1.TCP / UDP传输源中,源端口地址和目的端口地址是不能相同的
2.HTTPS采用SSL实现安全网站访问
3.若路由器接收的ip报文的目的地址不是路由器的接口ip地址,并且未匹配的路由项,则采取的策略是丢掉该分组
4.
将网络物理地址转换为IP地址的协议是RARP
用于在IP主机、路由器之间传递控制消息的是ICMP
5.MAC提供的是无连接不可靠服务

操作系统的知识
1.死锁四大条件
(1)互斥条件
(2)占有和等待条件
(3)不可抢占条件
(4)环路等待
防止死锁只要破坏他们中的一个就可以了
2.
LRU算法:最近最久未使用
FIFO:先来先出
LFU:(Least Frequently Used)最不经常使用页置换算法
它是基于“如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小”的思路。(基于访问次数)也就是淘汰一定时期内被访问次数最少的页
LRU:基于访问时间,最近最少使用算法。也就是首先淘汰最长时间未被使用的页面!
比如, 第二种方法的时期T为10分钟, 如果每分钟进行一次调页, 主存块为3, 若所需页面走向为2 1 2 1 2 3 4
注意, 当调页面4时会发生缺页中断
若按LRU算法, 应换页面1(1页面最久未被使用) 但按LFU算法应换页面3(十分钟内, 页面3只使用了一次)
可见LRU关键是看页面最后一次被使用到发生调度的时间长短,
3.在请求分页存储管理中,当访问的页面不在内存时,便产生缺页中断,缺页中断是属于程序中断

linux
1.有两台游戏服务器运行于linux 2.6.x内核上,需要同步用户访问日志,你会用下列哪些方法同步日志rsync
2.我希望看最近执行的3个命令(不包括history),需要用哪个命令:history 4
3.在xdm的配置目录中,哪个文件用来设置在用户通过xdm登录后自动起动的应用程序The Xsetup_0 file
4.Linux下两个进程可以同时打开同一个文件两个进程中分别产生生成两个独立的fd,(任何一个进程删除该文件时,另外一个进程会立即出现读写失败这句话是错的)
5.UNIX系统由内核、 shell 、文件系统和应用程序等 4 部分组成。

0 0