If You could design a OS...

Started by Dr. Mario, June 23, 2007, 09:05:04 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Dr. Mario

*scramble under table* Guess nobody want to talk anymore about their own OS builds...

(I think I see Seechan... T__________T Help me...)
;025 Now, Bowser... What can I do with you...

Echo 8

I had dreams of writing an OS once. I wanted to make something like Singularity, but that died after a week of experimenting with writing my own bootsector (tested in an emulator).

I had the bright idea that it'd be great to have garbage collection and automatic resource management built directly into the OS but then I realized I didn't know how to write a memory manager. Or any other parts necessary for an os (filesystem, etc.) for that matter.
Echo 8: I\'m the smartest person alive!!!
*Echo 8 trips over a rotting corpse

Dr. Mario

... Yeah, I agree. The memory manager for the future memory, XDR, (The same RAM as the PlayStation 3's main CPU's memory) is somewhat troubling. I have written, and crashed twice. (Won't tell exactly what CPU... sorry. But fear not, the day for the XDR-loving x86 CPU's coming. Hail the unlimited computing power! ^___^)

And my homemade OS' ATFS filesystem, you ask? This part's definitely harder - it uses 512-bit Random Hash Clustering encryption (which renders it entirely impossible to crack, even by FBI.)  - how hard will it be to be cracked? very... Think 512 bit of usable encryption codes and the power of numbers generated by your precious AMD Athlon 64's 64-bit processing and scramble it all over the hard drive. Only OS itself can crack it (in order to boot itself up).

Added after 13 minutes:

And, the command script's somewhat simple (if you can understand either C++ and ASM compilation commands, that is...)

Here's a example of text test (and some RAM testing) on my 64-bit homemade OS

; Test my memory - GreenOmega-tan ^___^
test_loop: RAX_mem       ; testing loop-rings of the RAX instruction in RAM
/end_loop(?)
_MEM_SIZE: scan_(00x0000 = ?)     ; getting memory size already checked
put (?) = 00x0020 = point_"HELLO_WORLD" ; putting ANSI or JAC hello text

/END_PUT    ; end inputting

POINT_"HELLO_WORLD"
RAX_0: "Hello,"
RAX_1: "I'm"
RAX_2: "GreenOmega 64 - tan!"
RAX_3:  "Umm... I get to run, bye!"

/"RAX_3" : EXIT_TEST
TERM_DATA: tryme.cmd ; It terminates this script in GreenOmega OS.

Uhh, if you think it's overwhelming - I'm not THAT good at programming,  and lecture-giving... O___O
;025 Now, Bowser... What can I do with you...

Dr. Mario

T_T My PC died (as a result of original BIOS going nuts) and I only have a working developmental computer at home (which is oversea...)
so the GreenOmega OS development is halted - for now.
(until I return to Tokyo..... -_-  And plus, I`m using Playstation Portable at this time.)
;025 Now, Bowser... What can I do with you...

C-Chan

Yo!  Long time no hear!   ;)

Sorry to hear that -- with what little experience I have with PSPs, they're not really the best MIDs in the world.  

Here's hoping you can restart GreenOmega soon.

Dr. Mario

;001 Finally, C-chan - I haven't heard you for a long time!
Yeah. But also I would recover my motherboard (by swapping the dead BIOS with GO64 AIOS)
and would post the desktop of a 64-bit (and 32-bit, maybe) GreenOmega OS.
(And of course, a video of GO64 AIOS and OS booting up, if it permits.)

Hopefully, I can get it done as soon as I get home.
(and I'm still researching about new PC hardware, such as supports for XDR memory linked to newer x86 CPU.)
;025 Now, Bowser... What can I do with you...

C-Chan

"Finally"?  Am I sought after or something?  ;)

I don't show up here often these days since I'm in the midst of Linux development myself (that's Linux SOFTWARE development, though -- not yet a kernel hacker).  :D

When I do, I'm generally limited only to two sections:  a few threads here in the computer section, and the OS-tan art section.  Everything else is completely offlimits to the C-chan now, by tacit agreement and also by my own personal choice.

I would probably say now would be a great time to see the latest and greatest screenshot for GOOS.  

Speaking of which, that reminds me about its unofficial mascot....  :)


Dr. Mario

you said you're familiar with Linux core?
I would like to ask you a favor for me - you can choose not to.

I would like to get my hand on a Rambus XDR controller driver from a PS3 Linux (you can translate it into a x86 version or I could do it myself - it's for the support of future x86 CPU on GO64 OS.)
;025 Now, Bowser... What can I do with you...

C-Chan

Actually, I think I said the exact opposite.  I'm not familiar at all with the Linux kernel and corresponding driver modules -- as a designer, I prefer to work on GUIs and other things the users will actually see.  :D

The few instances I have worked on backend material, it's usually just to fix issues with Perl or BASH shell scripts, and I definitely get hampered once any of those scripts call a feature tied to the kernel (an ever mysterious gray area for me).  ;)

Still doesn't mean I won't try to help out a fellow developer,... just means I might not be of much use.  

I would image that, unless the controller driver is not open, the driver should be used by any of the distros that can be installed to the PS3 (e.g., Yellow Dog Linux or Fedora Core).  And if it is an open [free] driver, it's source should be available from their corresponding software repositories -- it would then be a matter of accessing their repositories to find a copy of this source (which I can't do right now since I'm blocked from accessing FTP sites at the moment).

Yellow Dog Linux is a proprietary Linux distribution, so I would probably go for Fedora Core since its free and much more likely to be developer-friendly.

http://www.gnuradio.org/trac/wiki/PS3FC6Install

On the other hand, the instructions do call for the use of another OS called, quite appropriately, "OtherOS".  Given that the Linux distribution is only allowed to use half of the available system memory, chances are equally high that all those fancy PS3 hardware drivers are trapped inside OtherOS.

Admittedly, I am a bit confused about one thing.  You want to build support for regular x86 processors which are a dime-a-dozen, but the PS3 is at its heart a PowerPC no?  :|

Dr. Mario

Well, I was intending to use a Rambus XDR controller driver (possibly for AMD Phenom that might have its XDR DRAM bus mode turned on by
future revision of BIOSes (like Award BIOS...)

But if you couldn't do the transition from PowerPC into a x86 version, oh well. (At least I may have some information for using this DRAM in a
new PC, more like a revamped gaming PC - for the GO64 to be able
to page the XDR memory size - you know how the x86 CPU maps the
existing DRAMs.)
;025 Now, Bowser... What can I do with you...

neoraziel1

for me right now it would be nearly impossible to make a os unless i just copy some other one and change a few bits to my liking

Dr. Mario

Go figure. You're not alone - the OS is hard enough - I have been there, done it. Sometimes, it's all trials and errors.
;025 Now, Bowser... What can I do with you...

Odin Yggdrasil

I've been thinking of making a Linux-Windows hybrid as well actually.

Basically take Linux and add the Windows API calls directly to it so that you can run Windows code natively without needing emulators or their troubles.

When that is done all of a sudden you have a full GNU operating system with the powers of a goddess (Linux-sama) that holds the key to destroying Microsoft and it's evils forever.

Though it's a toss-up for me if I should use XP-tan or Vis-tan as the API that I implement...

C-Chan

Uh.... ^^;

http://www.linux-xp.com/

http://www.reactos.org/en/index.html

It might be worth your while supporting these [or similar] projects, since you can work on in the here and now, thus saving substantial time that would otherwise go into reinventing the wheel.

Bear in mind, though, that you can only add so many Windows components before your hybrid OS becomes Sue Bait.  I don't disbelieve that clever hackers have already created mutant Linux/XP hybrids (reverse-engineering the Windows portions when necessary, which would be often), and are able to do virtually everything on it.

But whether they can legally distribute it is a whole other matter, and one subject to painfully large lawsuits.  ^^;

Added after 2 minutes:

(btw, the Linux XP thing might have a couple of kernel tweaks, but yeah I'm sure 90% of its Windows "Compatibility" is just Wine stuff).  -.-

Odin Yggdrasil

I use MinGW for my coding when on Windows, and Linux's own G++ when in pure GNU environments.

Though mine will be based off of the 2.6 Kernel and probably Fedora 9 as the starting point.

Haven't really gotten into the code itself yet, though I do have ideas for how to make this work.