如果要构建一个新的操作系统,它将具有什么样的功能?

时间:2020-03-06 14:25:38  来源:igfitidea点击:

我想创建一个全新的操作系统,并且想听听这个论坛上每个人对此的看法吗?首先,大男孩们如此根深蒂固地生活在我们的生活中,以至于我们永远都无法改变(太可怕了……)。但是,如果不是这种情况,操作系统应该为我们做些什么?哪些功能最重要?是否所有组件都应该是单独的安装(换句话说,基本操作系统是否真的应该没有用户功能,而可以通过创建"插件"来添加这种功能,就像一个灵活的工具一样)?

我为什么要这样做...我对是否有需求感到好奇,我想知道,因为我们今天使用最多的操作系统(Linux,Windows,Mac OS X(免费BSD))实际上编写的数量超过了20年前(我很慷慨,我当时是说双核和四核不存在,总线速度慢得多,硬件价格昂贵得多,等等。。。)我只是对新技术感到好奇,如果我们愿意有什么不同吗?

我急于阅读评论。

解决方案

有关microversus整体内核的更多信息,请查阅Linus与Andrew Tanenbaum的"讨论"。

我强烈建议我们查看Linux(0.01)上的早期版本,以至少使脚浸湿。我们将不得不考虑汇编和非常晦涩的低级内容,甚至开始使用(尤其是进入保护模式,多任务处理等)。是的,"大个子"市场确实已经陷入困境。我并没有告诉你不要这样做,但是也许在linux内核上做一些工作将是更好的垫脚石。

操作系统应该完全没有用户功能。用户功能应该由单独的项目添加,这完全不意味着项目不应该一起工作!

如果我们对用户功能感兴趣,则应该考虑参与现有的桌面环境项目,例如GNOME,KDE或者其他项目。

如果我们对内核级功能感兴趣,请尝试在BSD衍生版本或者Linux上进行黑客攻击,或者尝试创建自己的系统-但不要对用户功能考虑得太多。正确设置操作系统的核心是困难的,并且将需要很长时间-想要重新发明一切都没有多大意义,而且我们将一无所获。

回答第一个问题:永远不会太晚。尤其是在利基市场领域之类的东西上。

其次,在开始创建新OS之前,我们应该了解这种操作的类型:这将是一个庞大的项目。

这仅仅是一个普通的程序员"抓痒"的项目吗?如果是这样,那么一定要继续进行-我们可能会从中学到很多东西。但是,如果我们要为最终的产品做这件事,那么在我们研究完所有当前正在开发的操作系统(比起初想的要多得多)之前,不应该走这条路。我们想更改它们。

相当有可能将精力花费在改进/更改现有的开源系统上。即使我们自己进行实验,如果我们已经开始开发某些东西,也可能会更容易获得所需的结果。

查看Cosmos和Singularity,它们代表了我想要的未来操作系统;-)
编辑 :
SharpOS是另一项托管OS工作。由yshuditelu建议

为什么要在物理机上直接构建操作系统?我们将只是在汇编语言中乱糟糟;)。当然,这很有趣,但是为什么不为虚拟机解决操作系统呢?

假设一个在Java / .NET / Parrot(我们将其命名)VM上运行的OS可以轻松地通过网络传递并可以运行许多软件。

它会包括什么?

  • 一种存储数据的方式(传统FS不会削减数据)
  • 进程/线程的模型(还是仅劫持VM提供的内容?)
  • 用于与这些流程进行交互的工具等。

因此,构建一个可以在广泛使用的虚拟机上执行的简单平台。为特定的细分市场(云计算?)添加一些很酷的功能。去!

底线...专注于目标,甚至更重要的是他人的目标...有助于满足这些需求。永远不要仅仅从技术开始。

我建议不要创建自己的操作系统。 (我自己的令人讨厌的中断...研究了云计算和Amazon EC2)

我完全同意,首先定义目标是有帮助的。我是用户体验的忠实拥护者,不仅会考虑自己的目标,而且会考虑受众/用户/其他人的目标。有了这些目标后,请继续下一步如何实现目标。

如今,什么是操作系统?内核,操作系统,虚拟服务器实例,Linux,Windows Server,Windows Home,Ubuntu,AIX,zSeries OS / 390等。我想这是OS的一个很好的定义... Wikipedia

我也喜欢Sun的口号"网络就是计算机"……但他们的公司在过去十年中确实倒闭了。

在网络的那一面是计算机...我再次强烈建议检查Amazon EC2以及更一般的云计算。

我们可能想先加入一个现有的OS实施项目,或者至少看看其他人已经实施了什么。

例如,AROS作为一种业余操作系统已经有10多年的历史了,现在在许多方面都非常有用。

还是更利基的东西?请查看Symbios,它是适用于4MHz Z80 CPU(Amstrad CPC,MSX)的完全多任务桌面(Windows风格)操作系统。也许我们会想要编写类似这样的东西,而这比完整的下一代操作系统要少得多。

我认为我们对我们当前的操作系统较旧是正确的。有人说所有操作系统都糟透了。是的,我们对他们没有问题吗?称其为BSOD,Sad Mac或者Kernel Panic。我们的文件系统出现故障,存在安全性和可靠性问题。

微软通过其奇点内核追求有趣的方法。它使用类似于.NET的虚拟机和正式的验证方法隔离软件中的进程。基本上,所有IPC似乎都已正式指定和验证,甚至在程序运行之前也是如此。

但是它还有另一个问题,奇异性只是一个内核。我们不能在其上运行非专为它设计的应用程序。这是一个巨大的惩罚,使最终过渡(奇点不公开)变得非常困难。如果我们设法产生类似的技术优势,但是有了一个真正的过渡计划(考虑IPv4-> IPv6问题,或者Windows如何在台式机上获得如此大的市场份额),那将是巨大的!

但是从小处开始也不是坏选择。 Linux就是这样开始的,在很多情况下,它可以带来更好的设计。小就是美丽。更容易更改。更容易成长。无论如何,祝你好运!

首先,一个小故事。 1992年,在第一届Win32(将成为MS专业开发人员大会)会议上,我有机会与Dave Cutler先生(大多数人现在称为Windows NT的首席架构师)共进午餐。 Windows 2000,XP等)。

当时我在IBM Boca Raton的Multimedia组工作,其中有些人可能还记得OS / 2. 在OS / 2上工作了几年之后,并且意识到OS的发展方向,我问他:"戴夫,Windows NT是否会将我们带入下一个世纪,或者我们还有其他想法吗?头脑 ?"。他对我的回答如下:

" M ..,Windows NT是任何人从头开始开发的最后一个操作系统!"。然后他看了我一眼,beer了一口啤酒,然后说:"然后,我们可以在和女孩度过特别美好的夜晚之后,下周六醒来,并采用全新的操作系统方法,那就是"会丢脸的。"

将对话放到上下文中,考虑到我回到大学攻读硕士学位(专门研究操作系统设计)的事实,我想说有很多机会可以容纳新的操作系统。事情是要透视事物。我们对该操作系统的目标目标是什么?它试图维修什么问题空间?

放眼所有这一切,将向我们表明我们是否真的将目光投向了可以实现的目标。

话虽如此,我第二次在较早的评论者笔记中提到有关调查"奇点"之类的问题(我今年春季在我的一个课程中演讲的重点是……),或者如果我们真的想"沉迷于刚开始时就将它安装到一个OS中。...请看" ReactOS"。

再说一次,像gOS之类的WebOS可能是我们未来十年左右的发展方向。还是再说一次,一个特别聪明的人可能在与女士或者男友度过特别丰盛的夜晚后醒来,并在操作系统中有了"下一个大想法"。

结帐奇异项目,
做一些革命性的事情

我一直想要一个基本上只是全新的操作系统。它会内置插件支持,使我们可以构建所需的用户界面,应用程序。

该系统的工作原理就像游戏中的Lua沙箱一样,减去了限制。我们可以构建一个可以访问各种子系统的插件或者模块系统。例如,如果要编写Web浏览器应用程序,则需要加载网络库并在插件脚本中使用它。需要"安全性"吗?加载库。

它与Linux的区别在于,Linux是一个操作系统,但具有运行在其之上的Windows管理器。在此理论操作系统中,我们将能够在插件系统内实现各种窗口的通用"外观"和"感觉",或者我们可以创建自定义界面。

Windows与Windows的区别在于它是完全可定制的,并且完全是指如果我们根本不想实现任何加密技术,则可以这样做,或者如果我们想要定制已存在的窗口,则可以这样做。没有什么是封闭的。

在此理论操作系统中,存在带有插件系统的OS。插件系统使用一种简单而强大的语言。

我认为,从头开始构建类似于市场上现有操作系统的新操作系统是浪费时间。相反,我们应该考虑从现在起10到20年后的操作系统是什么样的。我的直觉是,它们将是如此不同,以致于使它们几乎无法被当今的标准所识别。考虑一下诸如Facebook(gasp!)之类的框架,作为未来操作系统如何运行的模型。

我们也可以考虑使用MINIX,这是一个很好的起点。

对于这个论坛的发起人,先生,我先生,我敢于以大胆和理想主义的眼光思考有关IT行业的问题。首先,鉴于全球范围内蓬勃发展的计算机科学以及革命性Linux OS教给我们的开放性,问题恰恰是我们认为应该吸引更广泛受众的那种,这才刚刚开始赢得人们的广泛关注通过增强其友好的用户界面,使众多用户受益。因此,在推销信封方面倍感荣幸。

如果我正确地遵循了做法,那么我们可能会认为,鉴于迄今为止我们的工作成果,进一步的硬件和软件组合的开发可能会或者至少应该不太常规。当然,这意味着任何新开发都将比典型开发更快地达到其目标。然而,这一次至少要说是一个全新的OS系统的前景将是具有挑战性的,这仅是因为Linux和Windows之间已经存在如此多的摩擦。这实际上是开源与专有意识形态之间的一场战斗。 Bart Roozendaal在上面的评论中很好地证明了我的观点。忘记创新的想法,以及任何基于现代的操作系统可能带来的任何可能性,因为这些都是次要的。他实质上要问的是,我们是要站在利润一边还是没有?他在这里轻易地放弃了自己的位置。如我们所知,Windows因其在新市场,软件和其他技术方面的垄断方法而臭名昭著。自从它的存在以来,它一直保持着霸主的牢骚,可悲的是,窗户上的操作系统充满了无尽的错误和后门。

再次,我为我们走少的道路,并希望向前迈进,不灰心而感到鼓舞。就个人而言,我希望看到另一个操作系统……一个更现代的操作系统。