BetaArchiveOS

Discussion of beta and abandonware topics not fit for the other forums goes here.
Jackdopp
User avatar
Posts: 49
Joined: Mon Nov 09, 2015 10:34 pm

BetaArchiveOS

Post by Jackdopp »

We all enjoy OSes, why not make our own? I am putting a team together to do just that! BetaArchiveOS. It will start from scratch and will PM each other builds.

Requirements:
Assembly is required. C/C++ would be nice too.

If you want to join the team, tell me in the comments below, and I add you to the team. Thank you for your consideration!

:beta:
Image

Battler
User avatar
Donator
Posts: 2116
Joined: Sat Aug 19, 2006 8:13 am
Location: Slovenia, Central Europe.
Contact:

Re: BetaArchiveOS

Post by Battler »

I know reasonable amounts of assembly and I know C and some C++ as well (I after all submit patches to the PCem emulator which is written in C). I also have an increasing knowledge in computer hardware due to my work on PCem.
Main developer of the 86Box emulator.
Join the 86Box Discord server, a nice community for true enthusiasts and 86Box supports!

The anime channel is on the Ring of Lightning Discord server.

Check out our SoftHistory Forum for quality discussion about older software.

James
User avatar
Posts: 2030
Joined: Thu Oct 11, 2007 9:13 pm

Re: BetaArchiveOS

Post by James »

Going along with this; what's the goal of the project, and do you plan on writing your own utilities, file system, etc. -- or utilizing the GNU/Nonsense or BSD/Nonsense that exists out there?

Jackdopp
User avatar
Posts: 49
Joined: Mon Nov 09, 2015 10:34 pm

Re: BetaArchiveOS

Post by Jackdopp »

James wrote:Going along with this; what's the goal of the project, and do you plan on writing your own utilities, file system, etc. -- or utilizing the GNU/Nonsense or BSD/Nonsense that exists out there?
The Goal: To make an OS that you and me could use.

What I will do: Basic Stuff. My Assembly knowledge isn't great, but I do know some. I've already made a bootloader for the project
Image

mrpijey
User avatar
Administrator
Posts: 9188
Joined: Tue Feb 12, 2008 5:28 pm
Contact:

Re: BetaArchiveOS

Post by mrpijey »

Yes, because making a whole operating system is something that can be made in the spare time between home chores and the evening news show... Do you even realise the kind of effort and resources needed to even make a DOS clone? less a whole graphical OS? No one on this forum possesses the knowledge to make a fully working DOS-like OS, less a full modern one...
Image
Official guidelines: Contribution Guidelines
Channels: Discord :: Twitter :: YouTube

haroldas.velioniskis
User avatar
Donator
Posts: 410
Joined: Wed Oct 21, 2015 12:08 pm

Re: BetaArchiveOS

Post by haroldas.velioniskis »

Go there http://forum.osdev.org/
and there http://wiki.osdev.org/Main_Page
You'll find a lot of good information about OS developing

Overdoze
User avatar
Posts: 1762
Joined: Mon Feb 24, 2014 10:28 am
Location: Slovenia

Re: BetaArchiveOS

Post by Overdoze »

If you take a look around the internet (e.g. osdev.org), you'll see plenty of attempts at making an OS. More than 50% fail before accomplishing anything significant because people suddenly realize they don't have the knowledge it takes to make one. The remainder take years to reach at least some stage of usability, and even then they're more like a proof of concept rather than something you'd use on a day to day basis. As mrpijey said, making a DOS-clone, as simple as that sounds, is actually quite difficult, let alone moving it to protected mode and all the other fancy stuff. It's difficult and takes a lot of time.

I'm not trying to discourage you by any means, but this is the reality of OS development. Big companies with thousands of employees still need years to develop their OSes, hence why it's not usually done by every average Joe you find on the net. I wish you good luck on this endeavour, I mentioned osdev.org above which has a truckload of information that can help you with OS development.
All roads lead to Neptune™

KRNL386 - my site about retro computing | My site about Windows 1.0 | My blog | 86Box Manager | LeakDB - list of PC OS warez leaks

DJ Deedahx
User avatar
Donator
Posts: 479
Joined: Sun Sep 08, 2013 8:56 pm

Re: BetaArchiveOS

Post by DJ Deedahx »

Jackdopp wrote:We all enjoy OSes, why not make our own?
Hrm.

As some people wonder, I really wonder what the goal/point of this is... Is it supposed to be a learning experience or simply a pastime project?

One might also want to take the following questions into consideration, but this is really up to you and the devs:
  • Will it be command-line only or graphical + command-line?
  • Do you have a visual concept/mockup of what it could look like?
  • Will it be customizable later down the road? (I know it might be way too early to ask this question, but still...)
DDX — 86Box Staff/Power User & YouTube Channel Manager

Jackdopp
User avatar
Posts: 49
Joined: Mon Nov 09, 2015 10:34 pm

Re: BetaArchiveOS

Post by Jackdopp »

DJ Deedahx wrote:
Jackdopp wrote:We all enjoy OSes, why not make our own?
Hrm.

As some people wonder, I really wonder what the goal/point of this is... Is it supposed to be a learning experience or simply a pastime project?

One might also want to take the following questions into consideration, but this is really up to you and the devs:
  • Will it be command-line only or graphical + command-line?
  • Do you have a visual concept/mockup of what it could look like?
  • Will it be customizable later down the road? (I know it might be way too early to ask this question, but still...)
Goal: Learning Experience
1: Command Line for sure
2: Sorta like a 32-bit DOS sorta thing
3: If so, you could change the color of the background/text
Image

mrpijey
User avatar
Administrator
Posts: 9188
Joined: Tue Feb 12, 2008 5:28 pm
Contact:

Re: BetaArchiveOS

Post by mrpijey »

2: Sorta like a 32-bit DOS sorta thing

Sounds like a well laid out project plan to me :). If you really want to develop an operating system you need to do your research about hardware, memory management, I/O management etc, and make a proper plan on what to code, how it's supposed to work and how to code it. It's not something you rush into and then think it will sort itself out later, or you will just end up redoing everything (less likely) or abandon it all together (most likely).
Image
Official guidelines: Contribution Guidelines
Channels: Discord :: Twitter :: YouTube

louisw3
User avatar
Posts: 1490
Joined: Wed Dec 31, 2008 7:29 pm
Location: SE Asia

Re: BetaArchiveOS

Post by louisw3 »

If y'all want a 32bit os, to attack, try pdos...

http://pdos.sourceforge.net/

16bit real mode, 32bit pmode, and 31bit mvs.
"Those who don't understand UNIX are condemned to reinvent it, poorly." – Henry Spencer

Windows OS
User avatar
Posts: 455
Joined: Tue Jul 08, 2014 9:43 pm
Location: DLL Hell, United States
Contact:

Re: BetaArchiveOS

Post by Windows OS »

Hmm. This could be interesting... You have my support.
EDIT: See my post before on why I had retracted my support.
Last edited by Windows OS on Tue Jun 21, 2016 6:54 pm, edited 2 times in total.
Do Not Make Illegal Copies Of This Signature.
YouTube | Twitter | BA Wiki | BetaWiki

computebrute
User avatar
Donator
Posts: 680
Joined: Tue Dec 03, 2013 12:00 am
Location: us

Re: BetaArchiveOS

Post by computebrute »

This whole thing is pointless to be honest. How would making our own OS benefit the site or the users. What is the objective? If you can give a good answer to that question I will *consider* doing something.

Edit; Also you can't just easily "make an OS" from scratch without having extensive knowledge of the hardware you are working with. It's not as easy as you think.
Last edited by computebrute on Mon Jun 20, 2016 3:48 pm, edited 1 time in total.
Image
Image

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: BetaArchiveOS

Post by Stephanos »

I used to work on my own 64-bit kernel, but soon after I scrapped the project because it was just way too pointless (I got to the stage where it was able to support multitasking in SMP systems, running multiple user mode applications simultaneously). I'm now working with the NT codebase instead.

If you really want to work on your own kernel, you're better off on your own because you will learn the most that way. Practically speaking, the only point in developing a hobby kernel is to learn about the underlying processor architecture and operating system internals, and that is not really worth doing in a group.

p.s. As others pointed out, osdev.org is your friend. Also see #osdev on Freenode.

Fuzzy_Blanket
User avatar
Posts: 156
Joined: Sun Aug 09, 2015 9:59 pm

Re: BetaArchiveOS

Post by Fuzzy_Blanket »

I know nothing about programing, But I do like to create ideas for UI in my head, So I'll think about helping, But I have a busy life.
All hail the almighty PRIUS!!!

Jackdopp
User avatar
Posts: 49
Joined: Mon Nov 09, 2015 10:34 pm

Re: BetaArchiveOS

Post by Jackdopp »

mrpijey wrote:2: Sorta like a 32-bit DOS sorta thing

Sounds like a well laid out project plan to me :). If you really want to develop an operating system you need to do your research about hardware, memory management, I/O management etc, and make a proper plan on what to code, how it's supposed to work and how to code it. It's not something you rush into and then think it will sort itself out later, or you will just end up redoing everything (less likely) or abandon it all together (most likely).
The Research has already started! But I do have more than a lot to learn!
Image

Jackdopp
User avatar
Posts: 49
Joined: Mon Nov 09, 2015 10:34 pm

Re: BetaArchiveOS

Post by Jackdopp »

Would it be Better to use the NT kernel like Stephanos said?
Image

user99672
Donator
Posts: 1446
Joined: Sun Sep 27, 2009 7:55 pm

Re: BetaArchiveOS

Post by user99672 »

Jackdopp wrote:Would it be Better to use the NT kernel like Stephenos said?
His projects are modified compiles of Windows. You are not going to reengineer a system around the NT kernel. You're obviously a beginner programmer, so let's get something straight.

Slow Down.

Nobody walks into a Jaguar factory unannounced and comes out with an understanding of mechanical engineering and a working car that they themselves made. Everyone wants to build the next OS, web browser, whatever. There have been countless "browsers" here on BetaArchive which are just Internet Explorer and APIs exposed by the OS under the hood. In other words, something utterly useless. Next to no skills are gained this way, and it requires the minimal amount of effort. This is not a case of "it's so easy everyone can do it alone".

I would really get your perceptions of reality in check, however if you so want to do this, there are several checklists on OSDev of required skills. If you don't have each and every prerequisite, stop and learn that first. You are going to have to do a lot of reading, and math before you begin.

You also do not need to write an OS to write your own command line processor.

Windows OS
User avatar
Posts: 455
Joined: Tue Jul 08, 2014 9:43 pm
Location: DLL Hell, United States
Contact:

Re: BetaArchiveOS

Post by Windows OS »

user99672 wrote:
His projects are modified compiles of Windows. You are not going to reengineer a system around the NT kernel. You're obviously a beginner programmer, so let's get something straight.

Slow Down.

Nobody walks into a Jaguar factory unannounced and comes out with an understanding of mechanical engineering and a working car that they themselves made. Everyone wants to build the next OS, web browser, whatever. There have been countless "browsers" here on BetaArchive which are just Internet Explorer and APIs exposed by the OS under the hood. In other words, something utterly useless. Next to no skills are gained this way, and it requires the minimal amount of effort. This is not a case of "it's so easy everyone can do it alone".

I would really get your perceptions of reality in check, however if you so want to do this, there are several checklists on OSDev of required skills. If you don't have each and every prerequisite, stop and learn that first. You are going to have to do a lot of reading, and math before you begin.

You also do not need to write an OS to write your own command line processor.
Know what? He has a point. I mean, Linus Torvalds, a computer science graduate who knows assembly and C and studied the work of Andrew S. Tanenbaum (who developed MINIX, another Unix-like operating system) took about 5 months to develop and release the first version of the Linux Kernel. JUST THE KERNEL. Early Linux users still needed to insert in GNU software to do ANYTHING, since as Torvalds wrote on the release notes for Linux v0.1:
Linus wrote:Sadly, a kernel by itself gets you nowhere. To get a working system you need a shell, compilers, a library etc.
Plus, look at ReactOS. This NT clone is still in a buggy, incomplete, and unstable alpha state after nearly TWO DECADES in development.

Even UNIX, which was developed by AT&T's Bell Laboratories (who benefited from virtually UNLIMITED funding through the Bell System's virtual monopoly on telephone service, with their alumni including some of the most smartest and brilliant computer scientists in the world) took about two years for the first version to be released to the public.

If you really want to create a "BetaArchiveOS", try starting with making your own Linux distribution, since the parts that you need have pretty much been already coded. You just need to know how to implement them in. Or try compiling the source of Linux or ReactOS. And if that's too hard for you, then good luck coding your own kernel from scratch.
Do Not Make Illegal Copies Of This Signature.
YouTube | Twitter | BA Wiki | BetaWiki

mrpijey
User avatar
Administrator
Posts: 9188
Joined: Tue Feb 12, 2008 5:28 pm
Contact:

Re: BetaArchiveOS

Post by mrpijey »

Windows OS has very good points here. Making an OS is a very complicated, time consuming task that requires a lot of skills. Making an OS back in the 80's would be difficult enough, today you need a football team of programmers just to get started...

Also, if you manage to conjure something up please don't use "BetaArchive" in the name.
Image
Official guidelines: Contribution Guidelines
Channels: Discord :: Twitter :: YouTube

Overdoze
User avatar
Posts: 1762
Joined: Mon Feb 24, 2014 10:28 am
Location: Slovenia

Re: BetaArchiveOS

Post by Overdoze »

"a 32-bit DOS" is a somewhat common idea among amateur OS developers, though there's two things this can evolve into:

-it just looks like DOS, so it has a command line interface, uses drive letters (in combination with FAT16 most likely), etc. but it's running in protected mode so you get all the fancy memory protection features etc. Easier to make than the second option, but other than that it's not really all that useful or particularly impressive since most people start of with a CLI and protected mode. Basically your average "not-POSIX-compliant-OS".

-it actually aims for DOS compatibility. Aside from looking like DOS, it also supports it's API (the famous INT 21h) and thus can run 16-bit DOS programs in Virtual 8086 mode. Harder to make as it requires extensive knowledge of DOS internals, but, once in a working state, you can (theoretically) run DOS games on it. It's not something you'd sell for money, but it is an achievement nonetheless IMHO.

Some other points you should consider:
-custom bootloader/an existing bootloader (e.g. GRUB) - obviously custom is more difficult if you want to make it properly, but on the other hand, it gives insight into PC boot process.
-custom file system or not - note that you'll most likely start with FAT8/16 since it's the easiest to implement, and then possibly create your own or implement other more advanced file systems.
-custom API for creating software specifically for your OS - another sort of "achievement" that allows others to create software for you OS. You'll probably need to make at least part of an API for your own command processor anyway, so you can then just extend it further.
-self-hosting - means that your OS can be used to compile itself. Basically once you build a stable version and port the dev tools you use to build it onto your OS, you can develop new versions of your OS using the ported dev tools running on your OS. A major goal for many people it seems.
-porting dev tools - as above, if you want to self-host or allow others to use your OS to build software, you'll need to port some dev tools to your OS (a C compiler and library are a good start).

Just some of my thoughts on this topic. I've been playing around with the idea of making an OS myself for some time now, but eventually gave up before even doing any actual work (other than researching and planning) because I don't currently posses the knowledge required.
All roads lead to Neptune™

KRNL386 - my site about retro computing | My site about Windows 1.0 | My blog | 86Box Manager | LeakDB - list of PC OS warez leaks

Stephanos
Posts: 297
Joined: Fri Dec 26, 2014 5:38 am
Contact:

Re: BetaArchiveOS

Post by Stephanos »

In summary, if you really feel like developing your own kernel, do it on your own because you will learn the most that way (I can assure you that you will learn a lot from doing so).

Otherwise, don't try to reinvent the wheel; instead, study and analyse what is already there and look for ways to improve it.

QED.

AlphaBeta
User avatar
Donator
Posts: 2437
Joined: Sun Aug 12, 2012 4:33 pm
Location: Czechia

Re: BetaArchiveOS

Post by AlphaBeta »

Windows OS wrote:Know what? He has a point. I mean, Linus Torvalds, a computer science graduate who knows assembly and C and studied the work of Andrew S. Tanenbaum (who developed MINIX, another Unix-like operating system) took about 5 months to develop and release the first version of the Linux Kernel. JUST THE KERNEL. Early Linux users still needed to insert in GNU software to do ANYTHING, since as Torvalds wrote on the release notes for Linux v0.1:
Linus wrote:Sadly, a kernel by itself gets you nowhere. To get a working system you need a shell, compilers, a library etc.
Linux still is only a kernel, which, without the tools, GNU or not, is practically useless.
AlphaBeta, stop brainwashing me immediately!

Image

voidp
User avatar
Posts: 394
Joined: Fri Jul 01, 2011 3:04 am

Re: BetaArchiveOS

Post by voidp »

You should probably focus your enthusiasm on learning about operating systems themselves: architecture, design, etc.

     Search Amazon for "operating systems" books.

     Also see: Protected Mode Software Architecture.

     You can even read about a guy who actually wrote a 32-bit OS from scratch: Developing Your Own 32-bit OS.


When you understand the 'theory', you could then try implementing a few projects with a research kernel. It might be helpful to see what tools and projects are being used in undergraduate college classes.

xelloss
User avatar
Donator
Posts: 400
Joined: Sun Aug 18, 2013 7:26 pm
Location: Edinburgh, Scotland

Re: BetaArchiveOS

Post by xelloss »

Jackdopp wrote:We all enjoy OSes, why not make our own?
Hi Jack,

Developing an operating system from scratch is pretty boring stuff. Chances are you will have lost all of your interest in it way before it gets close to doing anything serious.
Nowadays it's not like you write an operating system from scratch without a very compelling reason. Not even the likes of Google do so.

On the other hand, modding the leaked source code of old OSs is an activity that some people enjoy. It's more entertaining and you can see the results of your efforts almost immediately. It's still quite time-consuming though.

Locked