flat assembler
Message board for the users of flat assembler.

Index > OS Construction > ASM OS

Goto page 1, 2, 3  Next
Author
Thread Post new topic Reply to topic
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 03:17
Hi, I am a really good asm programmer who is interested in writing an operating system in assembly.(FASM) I really don't want to be alone in such a large project. I wonder if anyone is interested in joining in on it.
Post 01 Mar 2008, 03:17
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20363
Location: In your JS exploiting you and your system
revolution 01 Mar 2008, 04:04
There are already a lot of hobby OSes being written by people on this board. Maybe your might consider teaming up with an existing OS.

If not, then perhaps you can outline what are the planned features of your OS and also show how far you have already progressed.

Have you got any experience with writing programs in a team? Do you want to be the team leader, a team coder, a tester, etc.? In which areas are your strengths and in which areas are you looking for help?

Do you have any particular application in mind? Sometimes a particular end app can help to motivate people into joining a project.
Post 01 Mar 2008, 04:04
View user's profile Send private message Visit poster's website Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias 01 Mar 2008, 10:26
os.hacker64 wrote:
I am a really good asm programmer ...
Welcome to the forum.
Your talent will be appreciated.
os.hacker64 wrote:
...I really don't want to be alone in such a large project....
I assure you, you will not be alone, if you wish to share your work, and make your efforts public.
os.hacker64 wrote:
...I wonder if anyone is interested in joining in on it.
May I humbly suggest that a good starting point, for recruiting like minded folks to join you in creating such a worthy, yet ambitious project, would be a concise written summary of your view of this new OS: pre-emptive, multitasking, protected mode, versus, other possibilities. What kind of file system would you employ? To what extent would you rely upon BIOS for services? How would this new OS differ from several asm based OS, as mentioned above by revolution? These include, but are not limited to, SOL, Menuet, & DEX4U, listing active projects in inverse alphabetical order.
Sometimes, as noted above by revolution, it is useful to get one's feet wet by participating in an ongoing project, such as may be found in that section of FASM forum devoted to Projects. On the other hand, if you understand well precisely what you seek to accomplish, and you are willing to spell it out, then, this is the correct location within the forum to elaborate a preliminary Operating System specification overview. Enthusiasm to participate in a community based project is often proportional to the explanation providing detail about the nature of the project--in this case, an operating system. So, if you do not mind explaining your plan, then, I suspect that you will rapidly encounter many FASM forumers, who both share your ideas, and wish to participate.
Smile
Post 01 Mar 2008, 10:26
View user's profile Send private message Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 14:03
I'll be back in a little bit with a somewhat complete description. Very Happy
Post 01 Mar 2008, 14:03
View user's profile Send private message Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 14:34
As of yet, the OS name is undecided(of course). I want to have the OS written for the x86 in protected mode. I chose this over using
long mode because long mode is not supported on all desktop computers and most people today use an x86 processor. It will be written in
assembly(as has been said), because assembly gives you more direct control over everything the computer does. I intend the OS to boot from
a EXT2 file-system (I don't want something too complex), but it will have a Virtual File System so that it is capable of reading many filesystems. The OS will be a preemptive multitasking Operating System that makes use of swapping for people with very little RAM. The scheduling algorithm is not decided though I want it to be fair and fast. I want it to load various
executable formats,(though not emulate things like WIN32 just the executable formats). It will have an Option of a GUI, but more functional
than what you might see in Dex-OS. In the end I want a very stable flexible OS that can be used for just about any purpose (mainly programming).
I also want to get a learning experience out of writing this OS. I hope you get the idea.

Programs I feel are necessary :
GCC
FASM
DD
CD
I want it to have internet access
Wireless card driver(s).


This is subject to revision and extensions.
Post 01 Mar 2008, 14:34
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20363
Location: In your JS exploiting you and your system
revolution 01 Mar 2008, 14:49
Seems to be very LINUXey, not necessarily a bad thing. But if you want GCC etc. to run then you need to port them all to your OS. Do you also intend to do the porting as part of the OS project?

Which parts have you completed? Which parts will you be doing? Which parts do you need help with? Do you have a plan with milestones laid out? Who will write the specs and docs? What calling standard? How much time do you have, what is your deadline? Minimum system requirements?

I have a draft doc for multi-developer projects here, mabe it can help a little. It is not finished yet, still some way to go, if you have some input it would be appreciated.
Post 01 Mar 2008, 14:49
View user's profile Send private message Visit poster's website Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 14:58
well actually I don't need gcc, I just want a C comiler, period. EXT2 is not required either, this is subject to revisions and the OS is not meant to be a clone of anything.
EDIT:
The bootloader is in progress. Do you think it should be able to use many filesystems or just one FS that is decided upon? (I have written an inflexible bootloader before(if I can find it somewhere Twisted Evil )
Post 01 Mar 2008, 14:58
View user's profile Send private message Reply with quote
DJ Mauretto



Joined: 14 Mar 2007
Posts: 464
Location: Rome,Italy
DJ Mauretto 01 Mar 2008, 15:26
Quote:
Hi, I am a really good asm programmer who is interested in writing an operating system in assembly.(FASM) I really don't want to be alone in such a large project. I wonder if anyone is interested in joining in on it.


Hello Wink
You have abandoned your project kanu 0.00000000001 Question
Post 01 Mar 2008, 15:26
View user's profile Send private message Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 15:36
DJ Mauretto wrote:
Quote:
Hi, I am a really good asm programmer who is interested in writing an operating system in assembly.(FASM) I really don't want to be alone in such a large project. I wonder if anyone is interested in joining in on it.


Hello Wink
You have abandoned your project kanu 0.00000000001 Question


That was a test, remember "crap done".

This is a very large project to complete by ones self

Kanu, Canu, Can u, Can you do this?
Post 01 Mar 2008, 15:36
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4347
Location: Now
edfed 01 Mar 2008, 16:00
if you're really a good asm coder, then you can join the FAB team, and then help to make the DNS connection, recieve and emit IEEE 802.3 frames, and parse html.

this is the basis of any new os, a web support, to update and install the files.
Post 01 Mar 2008, 16:00
View user's profile Send private message Visit poster's website Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 18:19
I'd rather start a new OS, and make something I understand from the bottom up. Very Happy
Post 01 Mar 2008, 18:19
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4347
Location: Now
edfed 01 Mar 2008, 19:52
as you are really good in asm, you can understand everything.
then you can start with this or this or this or this or this or this or many other this
Post 01 Mar 2008, 19:52
View user's profile Send private message Visit poster's website Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 20:02
edfed wrote:
as you are really good in asm, you can understand everything.
then you can start with this or this or this or this or this or this or many other this


I meant like knowing all the API functions and stuff. Maybe I will go and get somewhere and then see if someone wants to join. Would anyone be interested in doing the website for it though?
Post 01 Mar 2008, 20:02
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4347
Location: Now
edfed 01 Mar 2008, 20:36
the first question is not do make a site, but an os.
then ok, i can join, but as i'm a selfish coder, i prefer to code my own os, alone in the dark, for my own use, and never broadcast it, to be sure that i'll never be hacked.
Post 01 Mar 2008, 20:36
View user's profile Send private message Visit poster's website Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 20:45
How about instead of making a "secret os" make a very secure OS that will eliminate hackers, create very secure encryption, allow only certain types of remote access. An idea I had once was compressed encryption. Where a certain data size of bytes was compressed and encrypted into data half the size. So, Is this a yes?Very Happy(you want to join) I understand that it is very hard to make a non-hackable OS. Microsoft sucked at this.

That shows coding ability. Very Happy
Post 01 Mar 2008, 20:45
View user's profile Send private message Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias 01 Mar 2008, 21:18
os.hacker64 wrote:
...it will have a Virtual File System so that it is capable of reading many filesystems. The OS will be a preemptive multitasking Operating System that makes use of swapping for people with very little RAM. ...
Thank you for sharing your ideas!!
In my opinion, for what it is worth, I think it would be appropriate for you to pen a SHORT paragraph, two or three sentences could suffice, explaining primarily to yourself, why you seek to implement PRE-EMPTIVE multitasking, rather than cooperative multitasking....(big difference in overhead, and programming effort...)
With regard to your laudatory goal of helping folks without much RAM, I believe, and my opinion represents that of a distinct MINORITY among most FASM forumers, that it is thirty years later, (i.e. no longer 1978 when 128 bytes of RAM cost 12$. Today, 21st century, there is no shortage of memory--such a notion is only a fable from days of yesteryear. To me, any NEW operating system ought to be based upon working with a pentium level cpu, and a minimum of 256 mBytes RAM, so I personally reject as inappropriate your sentiment of "swapping", i.e. writing data to hard disk, because of a supposed shortage of RAM. (heavy overhead, slow, difficult programming)
os.hacker64 wrote:
...I intend the OS to boot from
a EXT2 file-system (I don't want something too complex), but it will have a Virtual File System so that it is capable of reading many filesystems.
In my opinion, you are not incorrect, but your opinion is widely divergent from my own thoughts here. I would take exactly the opposite approach, i.e. use or develop a single file system, ONLY one, and try to get a useable OS working with that, THEN add as many bells and whistles as one wishes, including the ability to interact with multiple file systems.
os.hacker64 wrote:
...
Programs I feel are necessary :
GCC
FASM
DD
CD
Gosh, couldn't disagree more. First thing is to establish the method of sharing memory, intertask communication details, and process scheduler, NOT some particular application like GCC, for which there is an extant OS which works well: LInux.
edfed wrote:
...to be sure that i'll never be hacked.

http://en.wikipedia.org/wiki/Maginot_Line
http://www.historylearningsite.co.uk/maginot_line.htm
os.hacker64 wrote:
How about instead of making a "secret os" make a very secure OS that will eliminate hackers, create very secure encryption, allow only certain types of remote access. An idea I had once was compressed encryption.
"very secure encryption", see Maginot Line above.
Smile
Post 01 Mar 2008, 21:18
View user's profile Send private message Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 21:57
these are the goals for a mature OS. I already have these points in mind, as stated above I don't need those, just need that functionality. No Swapping then. Very Happy Pre-emptive because:
One: Fairness
Two: Control
Three:Fairness
Post 01 Mar 2008, 21:57
View user's profile Send private message Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 22:01
There is no way to make sure you will not be hacked Twisted Evil
Post 01 Mar 2008, 22:01
View user's profile Send private message Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias 01 Mar 2008, 22:21
os.hacker64 wrote:

Pre-emptive because:
One: Fairness
Two: Control
Three:Fairness
Do you write this to indicate that cooperative multitasking leads to UNFAIR monopoly of cpu time? Here, I had in mind that you may wish to offer a reference, something from the theoretical literature on operating systems, to explain the advantages and disadvantages of both pre-emption and cooperative multitasking, prior to settling on one or the other....I doubt that those folks working with cooperative multitasking instead of pre-emption would share your opinion that only pre-emption is fair!!!!
Whether you are correct, or not, is not so important, but, what is important, in my opinion, is to know WHY you wish to incorporate precisely WHICH feature into your nascent operating system.
Some FASM forumers will dispute my contention that swapping is useless, so you need not abandon your goal, based on my suggestion!! My opinions are notoriously at variance with a majority of FASM forumers, on many subjects, so please do not change any aspect of your design based on my questions or responses, --rather you should profit, if possible, from these questions to seek answers for yourself to be thoroughly clear about your excellent project's design. Though this is a very good project, it will proceed much more smoothly, in my opinion, if it is well thought out, at the beginning of the travail, rather than jumping in to commence 'coding' before having settled on a proper design specification.
os.hacker64 wrote:

There is no way to make sure you will not be hacked
Thank you for writing what I sought to express in my typically verbose fashion!!!!
Smile
Post 01 Mar 2008, 22:21
View user's profile Send private message Reply with quote
os.hacker64



Joined: 01 Mar 2008
Posts: 22
os.hacker64 01 Mar 2008, 22:26
I'm thinking swapping should be optional. Very Happy
Post 01 Mar 2008, 22:26
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page 1, 2, 3  Next

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.