冯诺依曼体系
1. 保护模式
不允许随意访问内核的所有信息。分为内核态和用户态。
2. 为神魔有内核
向下管理硬件,向上提供系统调用(sc system call)
查看内核调用轨迹
strace -ff -o out java hello
BIO NIO 多路复用器(epoll, select) Netty
阻塞,所以抛出一个线程,一个线程对应一个链接。
弊端:
线程太多: 上线文切换,资源消耗。
nio 如果有链接返回,没连接返回-1。
弊端:
疯狂系统调用,即用户态和内核态切换。 假如有1w个客户端,没有发送数据,则有1w个系统调用(read)。
多路复用器
select, poll, epoll
弊端
每次重复传递数据
每次调用都要触发内核遍历