ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

windows和Linux比较

2021-11-24 12:30:27  阅读:148  来源: 互联网

标签:epoll windows IOCP Linux 开源 linux 服务器 比较


一、就操作系统设计的复杂度上,windows要超过Linux

如果windows抛弃人机操作的窗口界面,其性能并不比linux差;编写Web浏览器的难度要远大于编写Web服务器的难度;

二、为何大公司喜欢用linux

1、免费且开源,相对于免费,开源更加重要;

2、开源意味着更安全;

3、开源意味着可优化;

因为开源所以透明,因为透明,所以安全,但安全是相对的。

所谓的安全是针对大公司,是针对那些真正懂linux内核的人。他们可以自己定制化linux,比如加入自己特性化的功能,修改潜在的漏洞,或者他们认为需要完善的地方,甚至可以调优linux来解决自身业务的瓶颈。

透明是把双刃剑,对那些只会linux命令的人,开源并不意味着安全,因为你根本搞不清楚自己使用的机器是否被控制, 如果别人给你一个内核中藏有木马的linux,那么恭喜你,你可能永远都会沉浸在自己幻想的所谓安全中。

换句话说,如果windows开源了,那么windows对大公司是安全的,他们可以一窥windows内核,并对其增删改,去掉 所有图形化元素,将动态加载驱动改为内核态加载,优化IOCP并将其发挥到极致,我相信windows也会变成安全、稳定、 可靠、优秀的服务器,而且会比linux还要优秀。

但对于绝大部分在windows下做开发的程序员来说,windows开不开源其实跟你没有半毛钱关系,除非你有能力将windows 上千万行的代码耐心看一遍,前提是你要能看懂。首先,你要把汇编语言再学习一遍,把操作系统的书多看几遍,把编译原理的书也多看几遍,否则这些代码在你面前和天书没本质区别;其次你要有足够的时间和足够耐心;最后,你要真能识别出风险,毕竟windows是最成熟的商业操作系统.


记住:对别人的安全并不意味着对你安全!

开发后台程序和懂服务器、懂操作系统,完全是两个概念,这两者的差别就像狗和热狗的差别一样。 在linux上开发java后台应用服务,并不意味着这个程序员有多了解linux,后台程序跑在Apache、Tomcat、Nginx这些 真正的服务器上,这些服务器在帮你的程序优雅的处理高并发、高吞吐量和低延迟,而这些服务器必须要充分利用 linux内核的性能,这就意味你要真正理解什么是多线程,什么是线程池,select、poll和epoll的区别;

三、在网络方面,windows的IOCP模型要优于linux的epoll模型

1、IOCP真正发挥了多核CPU的性能,让IO操作均衡的负载在不同CPU线程上,epoll很可能会让有的线程累死,有的饿死;

2、IOCP是Proactor异步IO,epoll是reactor同步IO;

打个不恰当的比方,IOCP属于导弹发射后不管,最后通知你击中目标;epoll属于发射后需要分阶段导航。有人说epoll给了程序员更高的自由度处理来自内核的IO数据,毕竟可以手把手的制导导弹,很有成就感,但那是针对高水品程序员,如果你的水平一般的话,那结果可能是灾难性的。很有可能你会亲手把发射的导弹送出地球,或者引发另一场战争。实际上IOCP在业务处理上的难度要大于EPOLL,因为异步IO的原因,你的上层完整的业务已被碎片化了。

3、windows比linux在服务器性能上的慢,并不代表IOCP比Epoll差,这是windows定位的问题,如果你要让用户易用,那就要在某些方面做些牺牲。

标签:epoll,windows,IOCP,Linux,开源,linux,服务器,比较
来源: https://blog.csdn.net/lisheng0947/article/details/121512593

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有