Linux以外的开源操作系统大汇总
开源操作系统即公开源代码的操作系统软件,它遵循开源协议使用、编译和发布。自由和开放源代码软件中最著名的是Linux,它是一种类Unix的操作系统。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程中各种工具和数据库的操作系统。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。流行的Linux版本有Ubuntu、Debian、Fedora、openSUSE、CentOS、Red Hat等,移动开发领域使用最广泛的Android也是基于Linux内核开发的操作系统。
除了Linux外,还有很多其它著名的开源系统,现对Linux以外的开源操作系统进行一次搜集和整理,详细内容如下:
1、KnightOS
KnightOS是一个专为TI Z80计算器编写的开源操作系统,其代码托管在GitHub上。KnightOS提供了很多新特性,如开源,支持多任务,可同时运行32个任务;具有基于树型结构的文件系统;具有跨平台特性,能够支持包括最新的银版彩屏计算器在内的9种计算器、具有内存安全特性,重启后不会影响用户数据;KnightOS内核具有独立特性,它采用类 Unix 的环境,使用Z80的汇编语言编写,开发者可以用它来编写自己的操作系统;需要较少的内存,使用31K的内存即可运行程序。
2、ToAruOS
ToAruOS是一个由伊利诺伊大学计算机科学本科生开发的业余爱好操作系统,其代码托管在GitHub上。ToAruOS可在POSIX和x86架构上运行,其最终的目标是一个微内核。ToAruOS的主要功能包括对进程和线程的支持、ELF二进制的支持、运行时加载模块、管道(Pipe)和各种类型的终端设备(TTY)的支持、虚拟文件系统的支持、EXT2文件系统的支持、信号量支持等。
3、OSv
OSv是由Dor Laor和Avi Kivity领导的以色列创业公司Cloudius Systems发布的虚拟化、开源的操作系统,采用BSD许可协议授权,其代码托管在GitHub上。OSv的开发动机是由于今天大部分的应用都是跑在云端的 GNU/Linux虚拟机上,而GNU/Linux在设计之初并非为虚拟化而设计,像多用户和多进程的模式不但造就了复杂性而且也成为今天的 hypervisor的性能障碍。OSv旨在在云端取Linux。OSv能够使得一个应用程序跑在一个虚拟机上,这样就不需要kernel-land到user-land 的隔离,从而降低上下文切换的损耗;在启动速度方面,OSv只需要2秒就能启动完成;在安全性方面,目前,OSv支持检测use-after-free;在网络方面,OSv完全继承了FreeBSD的TCP/IP协议栈;在文件系统方面,OSv支持ZFS。另外,OSv还为应用程序提供了新的API,既支持原生的Linux应用,还支持原生的JVM和基于JVM构建的应用。
4、B2G
B2G是“Boot To Gecko”的缩写,它是Mozilla公司基于Web标准开发的完全开放的移动操作系统,其代码托管在GitHub上,从系统本身到应用程序完全由HTML5、CSS和JS来写的。B2G采用了linux内核和部分Android技术。目前,B2G已经被移植到了Galaxy S II、Nexus S 4G等Android手机上。B2G的前期目标是低价的功能机市场,先让功能机用户以同样的价格用上智能机。B2G不同于Android和IOS等平台,它完全基于Web标准,没有私有API和SDK,完全托付给Web API,这样就省去了开发SDK的步骤,开发者也省去了安装调试以及学习SDK的步骤。另外,B2G还有一个与众不同的功能,用户能够查看应用的源码,就好像使用浏览器可以察看网页代码一样方便。
5、jsos
jsos是一个由来自澳大利亚的Charlie Somerville 于2010年使用JavaScript编写的开源操作系统,其内核、C库、编译器和JavaScript虚拟机都遵守简单的BSD 协议发布,其中内核包括了一些来至1130.www.qixoo.qixoo.com/ToAruOS操作系统的代码。自从两年前最后一次的更新维护,Jsos至今还没有继续更新。
6、Singularity
Singularity是一种实验性、开源的微内核操作系统,它由微软研究院设计、开发,该操作系统的核心、驱动程序以及应用程序都以“受控代码”写成。Singularity的设计不以其性能为标准,而以系统稳定性作为首要标准。Singularity的低级x86中断使用汇编语言和C语言写成;Singularity的硬件抽象层使用C++语言编写,并运行在安全模式下;另外,并且也有部分C代码负责调试工作。
7、BareMetal OS
BareMetal OS是一个为X86-64系统开发、开源的64位操作系统,它使用汇编语言编写且能够使用C/C++开发应用程序,其代码托管在GitHub上。该系统的开发有三个适用场景,第一个是使用高性能的计算,能够作为HPC集群的节点,也能够最为但认为系统以运行高负荷的计算任务;第二个是嵌入式应用,提供了基于x86-64硬件的嵌入应用开发平台;第三个是提供教育和教学使用,提供了基于X86-64环境的汇编语言的学习和实验的环境。目前,该系统只是尽可能提供有用的功能,还没有将其打造成通用操作系统(如Mac OS X、Linux、Windows)的计划。
开源操作系统具有安全、稳定、免费或少许费用、能够快速修复漏洞、有强大社区的大力支持等优点,同时还为大家提供了学习和交流的资源。开源操作系统在服务器市场已占有了绝对的优势,同时在个人PC市场也正在发展壮大。目前,就连微软对待Linux的态度都有了巨大的转变,已从原来的将Linux比作毒瘤到现在的宣布:微软爱Linux的巨大转变。
Linux以外的开源操作系统大汇总的更多相关文章
- C#开源系统大汇总(个人收藏)
C#开源系统大汇总 一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖 ...
- C#开源资源大汇总
C#开源资源大汇总 C#开源资源大汇总 一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行 ...
- C#开源系统大汇总
一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖配置文件的方式.这种部署方面(as ...
- C#开源系统大汇总(转)
一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖配置文件的方式.这种 ...
- Web开源框架大汇总
Struts 项目简介信息 Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的.由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的 ...
- [开源]C#中开源软件大汇总(外国的)
一.博客类项目 1.SubText 项目介绍:Subtext 是一个个人博客发布平台,详细的介绍请进SubText 项目分类:博客 项目license:BSD License 项目主页:http:// ...
- android app性能优化大汇总(内存性能优化)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 写在最前: 本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上 ...
- ANDROID内存优化——大汇总(转)
原文作者博客:转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! ANDROID内存优化(大汇总——上) 写在最前: 本文的思路主要借鉴了20 ...
- 推荐Linux管理员不可不知十大PHP安全要点 - SCutePHP
PHP是使用最广泛的脚本编程语言之一.市场份额颇能说明其主导地位.PHP 7已推出,这个事实让这种编程语言对当前的开发人员来说更具吸引力.尽管出现了一些变化,但是许多开发人员对PHP的未来持怀疑态度. ...
随机推荐
- .NET技术在中国为什么老被人嫌弃
这个话题有点自黑的意思,我从.NET 1.1开始玩.NET,到现在已经11年了,我是看着.NET成长起来,在中国壮大的,也见证了近几年.NET被各种嫌弃,其实说到底还是中国的架构师太少,我是说真正懂行 ...
- asp.net、 mvc session影响并发
现象:在一个网站中,当访问一个处理比较耗时的页面(A页面),页面请求还没有返回时,此时再点击访问该网站的其他页面(B页面)会出现B页面很久都没有响应和返回,直到A页面输出返回数据时才开始处理B页面的请 ...
- [转]Android中Xposed框架篇—利用Xposed框架实现拦截系统方法
一.前言 关于Xposed框架相信大家应该不陌生了,他是Android中Hook技术的一个著名的框架,还有一个框架是CydiaSubstrate,但是这个框架是收费的,而且个人觉得不怎么好用,而Xpo ...
- Unity 5.3.1 No Android/IOS module loaded
unity我一直在用5.0以下的版本 昨天升级到了最新版本5.3.1 发现无法打android包,ios也不行 提示“No Android/IOS module loaded” 下面有个Module ...
- 深入理解OOP(第一天):多态和继承(初期绑定和编译时多态)
在本系列中,我们以CodeProject上比较火的OOP系列博客为主,进行OOP深入浅出展现. 无论作为软件设计的高手.或者菜鸟,对于架构设计而言,均需要多次重构.取舍,以有利于整个软件项目的健康构建 ...
- Scala入门之Array
/** * 大数据技术是数据的集合以及对数据集合的操作技术的统称,具体来说: * 1,数据集合:会涉及数据的搜集.存储等,搜集会有很多技术,存储现在比较经典的是使用Hadoop,也有很多情况使用Kaf ...
- 个人觉得目前 最好用的Taobao API的NodeJS封装
话说,Top API SDK默认只给了四种语言的SDK,没有我大NodeJS,这可怎么行,于是封装了一个. 参考地址 GitHub: https://github.com/xiaoppp/TopAPI ...
- RabbitMQ集群、镜像部署配置
1 RABBITMQ简介及安装 RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python.Ruby..NET.Java.JMS.C.PHP.Act ...
- Oracle空串与null的处理
来源于:http://blog.itpub.net/24870090/viewspace-1057853/ Oracle空串与null的处理[@more@] Oracle中的空字符串基本上是被当成空N ...
- Oracle报 ORA-00054资源正忙的解决办法
来源于:http://www.cnblogs.com/loveLearning/p/3625544.html oracle之报错:ORA-00054: 资源正忙,要求指定 NOWAIT 问题如下: S ...