计网
1.和IP、ARP/RARP协议同在网络层的ICMP的作用是负责传输网络之间的数据
- 例如某路由器可达不可达、某网络是不是联通的
- 不负责传输用户使用的数据,即可理解为ICMP是负责维护TCP/IP框架的底层协议
2.一个电子邮件程序使用的TCP/IP协议:
- 使用SMTP来发送邮件(包括发送方发给发送方邮件服务器,和发送方服务器发给接受方邮件服务器)
- SMTP只能传ASII码数据,如果非ASII码,需要用MIME转化成ASII码再用SMTP传(接收方也要用MIME进行解析)
- 使用POP从邮件服务器下载邮件
- IMAP也可以
- ps:用浏览器去登录邮箱并不涉及以上协议,用户只用http协议即可,SMTP和POP等由邮件服务器内部处理
3.域名可以对应多个IP
- 一般一个域名对应一个IP
- 但是其实是可以为单个域名配置多个IP的,然后用户访问该域名时就会按DNS事先配置的解析策略返回IP
- 轮询、权重、根据测量服务器的响应时间来分配最快的
- 利用解析策略可以在DNS层面上实现负载均衡
- 优点:由DNS来实现负载均衡减少额外布置的负载均衡服务器、操作简单成本低、可利用DNS系统大多基于地理位置来解析的特点加速用户访问
- 缺点:DNS具有缓存机制,修改了解析策略后也需要等用户使用的缓存失效才能起作用、DNS不具备检测服务器当前状态的能力,所以一般大项目只用作第一级负载均衡
操作系统
内存管理
1.某进程的虚拟内存中,当前要用到的数据会放在主存里面,当前不用的会放在磁盘中
- 当时这一点进程是没有感知的,它会认为当前所有数据都在主存里面,这样设计是为了让程序在逻辑上不用去考虑底层内存的分配问题
2.内存碎片
- 外碎片:分配单元间隙的未使用内存
- 内碎片:分配单元里面的未使用内存
3.内存的分配策略
- 最先分配:把遇到第一个空闲块分配
- 最好分配:把所有空闲块中最合适的空闲块分配,即内碎片最小
- 最坏分配:把所有空闲块中最不合适的空闲块分配,优点在于优先把大的空闲块破碎
4.虚拟线程、green thread其实和协程是一个东西,都是用户空间操作的线程,不由系统调用而由用户代码控制