如何制作自己的操作系统(操作系统)? [英] How to make my own OS(operating system)?

查看:133
本文介绍了如何制作自己的操作系统(操作系统)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何制作自己的操作系统?当我说我自己的时候,我是指从头开始.我是否必须在另一个OS上执行此操作?

How do I make my own OS? When I say my own I mean from scratch. Do I have to do it on another OS? How were the first OS made?

推荐答案

^ ]

Cosmos-C#开源托管操作系统 [ ^ ]
Develop Your Own Operating System in C# or VB.NET[^]

Cosmos - C# Open Source Managed Operating System[^]


请参阅我对问题的评论.是的,您可以在某些现有的操作系​​统上执行此操作.试想一下:毕竟,从概念上讲,创建新操作系统的过程仅限于在某些存储介质(例如CD,DVD或闪存驱动器)上创建某些映像.现有媒体上的那些媒体设备和固件的标准已经允许计算机(如果准备好了)从该媒体启动.多么奇妙的是,您可以将所有这些物理扇区"写到媒体上,使其被视为可引导的,并最终引导整个操作系统?毕竟,您只需要在媒体上写字节即可.

是的,这里有一个鸡和蛋的问题,但是现在不是,所有的东西都可以用于新的操作系统了.请阅读以下主题:
http://en.wikipedia.org/wiki/Bootstrapping#Computing [ http://en.wikipedia.org/wiki/Bootstrapping_%28compilers%29 [ ^ ].

不幸的是,上面的文章参考中讨论的操作系统引导较少,而编译器的引导较多,但是有些想法是相似的.毕竟,要编写程序,您需要其他程序.他们从哪里获得了第一个可用作软件开发工具的程序?

它带给我们您的第二个鸡肉和鸡蛋"问题.如果我们同意,关于 鸡肉和鸡蛋 的旧因果关系难题就太容易回答了要从形式上和最狭义的意义上理解这个问题:当然,鸡蛋是第一位的,因为在鸡肉从其前辈进化出来之前,许多其他种类的动物已经有了鸡蛋. :-)
有趣与否,但这应该是您有关首次制作的操作系统"问题的关键.没有第一操作系统"之类的东西.相反,软件程序的概念逐渐发展,当某些现有软件(和硬件!)已经具有一些与OS相关的基本功能时,"OS"本身的概念最终得以创建.真正令人惊奇的演变仍然没有奇迹或神秘之处.有关详细信息,请尝试深入研究计算历史.或者只是深入学习编程. :-)

OS概念的发展(不是OS某些模型的开发,而是概念本身的发展)在不断发展.顺便说一下,这些天来,人们很少开发在可启动媒体上编写的新操作系统.大多数此类工作都是基于虚拟化完成的.请参阅:
http://en.wikipedia.org/wiki/Platform_virtualization [ http://en.wikipedia.org/wiki/Virtualization [
—SA
Please see my comment to the question. Yes, you would do it on some existing OS. Just think about it: after all, the creation of a new OS is conceptually reduced to creation of some image on some storage media, such as CD, DVD or flash drive. The standards for those media devices and firmware on existing computers already allows the computers to boot from this media, if it is properly prepared. What is so wonderful that you can write all those physical "sectors" on the media the way it would be recognized as bootable and ultimately bootstrap the whole OS? After all, you merely write bytes on the media.

Yes, there is a chicken and egg problem, but not these days, where everything is ready for new OS. Please read on this topic:
http://en.wikipedia.org/wiki/Bootstrapping#Computing[^],
http://en.wikipedia.org/wiki/Bootstrapping_%28compilers%29[^].

Unfortunately, the article references above discuss OS bootstrapping less and compilers more, but some ideas are similar. After all, to write programs, you need other programs. Where did they get the very first program to be used as a software development tool?

It brings us to your second, "chicken and egg" question. The old causality dilemma about chicken and egg, is way too easy to answer, if we agree to understand the question rather formally and in the most narrow sense: of course, the egg came first, because, before the chicken get evolved from their predecessors, many other species of animals already had eggs. :-)
Funny or not, but this should be a key to your question about "first OS made". There was no such thing as "first OS". Instead, the concepts of software programs evolved gradually, and the concept of "OS" itself was eventually created when some existing pieces of software (and hardware!) already carried some rudimentary features which are now associated with OS. This evolution, being truly amazing, still presents no miracle or mystery. For detail, try to dig into computing history. Or just learn programming in-depth. :-)

The evolution of the concept of OS (not development of some models of OS, but evolution of the concept itself) continues to evolve. By the way, these days, people rarely develop new OS written on a bootable media. Most of such work is done based on virtualization. Please see:
http://en.wikipedia.org/wiki/Platform_virtualization[^],
http://en.wikipedia.org/wiki/Virtualization[^].

This ways, the OS being developed and tested is run not on a "real" machine, but on a virtual hardware emulated on some existing system.

—SA


这篇关于如何制作自己的操作系统(操作系统)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆