V2 OS
Blizzard-ahb writes "You may want to have a look at this 'still has that new car smell' operating system.
V2 OS is written entirely in ASM for x86 processors and aims to be the fastest OS around. Just needs some developers to start coding some applications for it.
It weighs in at a massive 37KB download. There is a SDK availible for download that uses C, or you could write in ASM as well. Did I mention that it was free?"
IMHO assembly is the right choice when it comes to speed, as i'm involved in game development and most of the time the extra speed is mandatory for complex algorithms and hardware tricks, but games are developed for common hardware and most of the time they don't really need to be very flexible.
:)
But in the OS side, speed is definitely not as important as a clever design. If these guys want their OS to lift off they better be very thoughtful, because it doesn't make any sense to code the fastest hack if you can't really extend its capabilities or program applications easily. I think a good example of what does a well-built, small, fast AND portable OS look like is QNX. OS, GUI, Web server, browser and some more stuff fits in a floppy, and most of it is written in C/C++.
Personally, I hate coding the same thing twice for two different platforms, I really like the idea of using my code for more than one thing, and that's what standards like ANSI C and POSIX are all about.
These guys might as well win some Assembly '00 award with amazing code like the V2, but let's be serious, assembly should be used only when needed.
That said, coding in assembly is really fun (except when you have to explain your code either to other person or to yourself after some weeks of working at something else
--------------------
- Otaku no naka no otaku, otaking da!!!
first, its NOT free. you dont get ALL the source. so its closed source. you get some example code and some binaries.
second, it has NO memory protection. NONE! (if you read their forum, in development, one of the v2 guys confirmed the question). no memory protect, so your app can crash the kernel (sounds like a mac os or dos)... Having no memory protection means you have to give 100% trust to all your programs + programmers to do the correct thing. heh and we all know that means nothing in the real world.
sounds crap. ok, so its written in 100% asm. whoa. big deal. if your into hobbyist os (check my FAQ!!:), there are lots of startup OSii in 100% asm. nothing to get wet knickers over.
(i found it VERY strange to see this story on slashdot, if you read the OS dev newsgroups or follow OSii boards, little osii like this are announced *ALL* the time at an alarming rate. there really isnt anything special about this one)
but.. BUT! Creating OSii isnt everyones cup of tea and its good to see people still doing it ;)
mebbe i should make a distinction here about hobbyist os' and main stream type os. ala v2 vs linux. talk about apples and oranges.
linux has grown way past being a hobbyist os to a main stream os some time ago.
vsta + tinyos strikes me as being stuck inbetween, vsta more hobbyist than tinyos....
anyway.
if you do have an itch to scratch, you can check my faq for basic questions + answers on several os dev topics...
Write your Own Operating System [FAQ]!
no sig for you
Really.This looks like an exercise in OS design and x86 assembler coding. I hope these guys had a lot of fun writing it, because that's all the utility that's going to come out of it. Do we need a mini-OS for desktop machines? Nope. Do we need one for palmtops? Yes, but palmtops don't run x86 processors, oops. Do we need one for embedded processors? Also yes, but x86 processors are quite rare there, plus there are already a couple of OSes around and even at least one (AFAIK) open-sourced.
So I'm standing here, wondering: what's the point?
Kaa
Kaa
Kaa's Law: In any sufficiently large group of people most are idiots.
http://webster.cs.ucr.edu/Page_asm/ArtofAssembly/A rtofAsm.html
If you want to dabble and learn about it, check it out. It's a book written by a prof. at ucr and it's the best freaking ASM (x86) book ever existed, and it's freaking free online.
OK. This is supposed to be news for nerds, yet, nearly every comment so far has been negative.
So what if it's 32bit, not Open Source and isn't 'Quake 3 ready'. Its small, fast and free.
How about checking it out, sending the guys an email, or, just for the hell of it, throw it on a floppy and try it in VMWare. Perhaps some of you 1337 c0d3rZ would enjoy writing some fast clean programs, instead of the library loving crap that is *nix software these days.
And, lest we forget, 30 year old legacy code is not exactly 'freshmeat'.
There's already a fast, free, all-ASM operating system out there, just looking for project members!
It's got way more background, and has a much more proven design. Better app support too. It's already got EMACS!!!
It's called ITS, the Incompatible Timesharing System, and it'll run on your frindly Digital Equipment Corporation PDP-10.
It became obsolete sometime in the early 1970s when K & R & T rewrote UNIX in C. For all its faults, honestly the new invention is much easier to maintain.
Actually, starting with x86 should make it easier to port to other architectures. It's a lot easier to port ASM code written for a register poor machine to a register rich machine than to try to do the reverse. However, the ported code won't take advantage of the more register rich architecture, which would defeat the whole point of writing an OS in assembly! So, in other words, if you're even thinking about porting this code to another architecture, you've missed the whole point! What you'd want to do is write from scratch in assembly an OS that is compatible with this one. But if it's not written from scratch for the architecture in question, taking specific advantage of what that architecture has to offer, even though that makes porting next to impossible, then it misses the mark this OS is aiming for.
--
"Convictions are more dangerous enemies of truth than lies."
Some days Slashdot reminds me of a highway, where there is an endless series of rabbits lurking just off the shoulder, quivering and licking their asses to pass the time. They're eager, but they're not very bright and they're not very brave. Nevertheless, a time often comes when one of them gathers its courage, and with a joyously crazed look in its eyes, runs across the damn highway! Splat. Why? Don't ask me, I have a brain. I don't do these things. I don't claim to understand them. All I know is that there are all manner of marginally self-aware vertebrates running around loose on this tired old planet which, for reasons best known to themselves, will occasionally gather all their feeble energy and then release it all at once in a blaze of intense public idiocy. And an alarming number of these critters turn up on Slashdot.
Now, I hope you don't mind my asking, but what kind of a fucking MORON are you?
Why waste time on Linux when we've got [A-Za-z]+BSD?
Why waste time breathing when you could be ramming a goddamn stoat up your fat, stinking ass?
Why waste time posting mindless gibberish on Slashdot when you could be masturbating to a picture of Linus fucking Torvalds?
Nobody needs your goddamn permission to write code. Those of us who write code, do so because we like to. If a project "grabs" us, and if we have the time, we do it. Frequently we're "scratching an itch" as the man said, but as often as not, we're just playing. I don't recall ever having seen or heard an actual programmer (not even a drooling imbecile like Tom Christiansen) take the attitude you have. Why not? Because they "get it". Also because if they think more time should be spent working on "useful" projects, they're quite free to spend their own time on such things. And many of them do. But if they choose not to, it's their time, not yours. Fuck off. Use Linux if you like, that's what it's there for, but don't start making any goddamn demands.
It may be writen in assembly.. and they may have put some effort into optimising it.. but I doubt they have put they have put the kind of effort that some other people have. There was one project a long time ago where this guy wrote a microkernel which used self modifing code (well actually just higher order functions) to beat out all the monolithic kerenls---instead of giving you a file handle it gave you a whole set of functions which were optimised for the way you opened the file. I think the guy achieved an order of magnitude speed increase. The coolest thing about this aproach was that most of it could have been done in a high level langauge that supportted higher order functions.
What this all means for this guy is: Assembler is not the answer to over all high speed.. compilers which allow you to take advantage of self modifing code in a structured way would be the really fast solution. Unfortunatly, people generally do not add higher order functions to fast imperitive langauge like C.
I should mention that there may be a programmer time cost associated to using these sorts of tricks in an imperitive langauge, but the functional langauges which allow the programmer to seamlessly take advantage of these things generally have other compiler problems, but it is possible that one day the functional programmers will langauge at how slow everybody elses code is because their compilers can do tricks like this and everybody else has to do a lot more work to get the same things.
Jeff
The Christian religion has been and still is the principal enemy of moral progress in the world. -- Bertrand Russell