2021/8/19
leetcode三题
mysql45讲 学习其中5讲;
晚上笔试一场
百度面经总结两篇。
学习了http和https arp 操作系统内存管理等几个协议的工作原理
-
0x00000000 ~ 0x80048000
不能给用户访问,这里面是一些C运行库的内容,访问会报 segment fault 错误。
-
每个虚拟内存中的内核地址,其实关联的都是相同的物理内存。
-
已初始化数据段,包括静态常量;
未初始化数据段,包括未初始化的静态变量;
堆段,包括动态分配的内存,从低地址开始向上增⻓;
⽂件映射段,包括动态库、共享内存等,从低地址开始向上增⻓(跟硬件和内核版本有关);
栈段:包括局部变量和函数调⽤的上下⽂等。栈的⼤⼩是固定的,⼀般是8MB 。当然系统也提供了参数,以便我们⾃定义大小;
ARP
-
通过ARP缓存表进行映射工作,每一个表项的过期时间通常是20分钟。
-
如果缓存表中没有,那么就需要通过广播ARP请求报文(目的MAC全为1),对应主机会回答此响应;同时主机会在ARP表中进行映射。
-
ARP表分为动态ARP表和静态ARP表
-
免费的ARP请求是为了请求自己的mac地址,起到可以告诉其他主机自己的ip地址和mac地址,可用于ip地址检测(当一个主机发送免费ARP请求包还收到了此ip地址的响应包,那么说明有冲突。)可更新其他主机的ARP表。
-
ARP是建立在信任对方的网络上的,所以易受到欺骗攻击,极其不安全。可通过建立ARP服务器来预防是其中一种方法。