让学计算机的学生退学的两个原则–额外的层和cache

计算机科学的发展史就是一个分层的历史,如果你想不动上面不动下面而在中间插入一个功能,那么你就提供一个层次,如果你做到了上面所说的,但是苦于效率低下,那么就提供一个cache层。层的例子:应用程序->标准库->操作系统->硬件;OSI网络模型。cache的例子:cpu的cache;文件系统的页面cache;页表本身对于虚拟内存管理中也是一个cache。分层是为了无限扩展,cache是为了衔接不匹配的各个模块,分层和cache有的时候会冲突,比如基于TCP/IP的协议栈的实现,有的时候为了效率,为了尽量少的访问速度相对cpu较慢的pci总线,数据包往往不是按照协议栈标准从上到下依次推进,而是出现了TEO和TSO之类的技术,由物理层来完成传输层的一些动作,正如名称所示,将tcp层的cpu的工作卸载到pci设备网卡上。引申一步,所有的打乱当前规则行为的不规则行为都应该被尽量减少或者避免,比如正常运行的cpu被中断完全是为了照顾外设(不考虑cpu的出错检测),但是外设不能上房揭瓦,如果cpu和外设是由一个厂商设计和生产的,完全没有有中断,照顾毕竟是照顾,永远不能将中断作为主导,所以有了NAPI。

如果你明白了上面的两个原则,你就退学吧!

原文链接: https://blog.csdn.net/dog250/article/details/5303025

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    让学计算机的学生退学的两个原则--额外的层和cache

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/410525

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年4月26日 下午12:04
下一篇 2023年4月26日 下午12:04

相关推荐