OSDev.org

The Place to Start for Operating System Developers
It is currently Sat May 04, 2024 11:52 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 91 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 7  Next
Author Message
 Post subject:
PostPosted: Wed Feb 28, 2007 4:03 pm 
Offline
Member
Member
User avatar

Joined: Tue Oct 17, 2006 9:29 pm
Posts: 2426
Location: Canada
Crazed123 wrote:
I have one last tidbit for the troll here. Troll, if Unix and BSD are the best operating systems on Earth and research efforts towards better operating systems can server no use, why in hell have you come to a board devoted to operating system development? Why are you making something new when the best already exists?

Oh, and I've always wanted to use that Harry Potter line.


Stop calling me a troll.. troll ;)

I joined this forum with the simple interest in seeing how many people have made Unix-like or POSIX compliant Operating Systems. It's a hobby of mine.. everyone has a hobby :P

OpenBSD will never replace my Desktop OS.. but I still find it interesting to see who's interested in similar design philosophies..

You seem to freely defend your opinion.. but call other people "Weenies" if they have opinions of their own.. This is how you're hypocritical.

I myself often tell people my opinion of Microsoft.. but If I'm a troll you yourself are one too ;)

_________________
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 4:09 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
C# is not the intermediate language. C# is a high-level language with C-like syntax and a feature-set mostly stolen from Java and Delphi that happens to compile to Microsoft's Common Intermediate Language.

As to using it in an OS... I see no reason why you couldn't put the JIT compiler into a library or module and simply attach its inputs and outputs to memory locations instead of files.

It's like bootstrapping a microkernel. You would load a small stub-kernel and the JIT compiler. The stub would JIT the real kernel, and then jump to it. Bammo.

Of course, this would all work rather slowly. I would recommend generating a native binary of your kernel itself.

The major feature of using CIL, however, is supposed to be moving protection into the language. An intermediate language that doesn't actually allow unsafe operations would allow an operating system to run all of its programs in supervisor mode. Everything could even run in one address space.

Of course, you have to expose "privileged" operations like I/O and interrupt handling to somebody. How can you do that without breaking the safety of CIL? Code scanning is one solution. The JIT compiler could scan for privileged instructions and refuse to compile any program that used them without proper authorization.

Singularity is aiming for something like all this. There's also a system called Go! that does something similar in native x86 code, IIRC.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 4:13 pm 
Offline
Member
Member
User avatar

Joined: Tue Oct 17, 2006 6:06 pm
Posts: 1437
Location: Vancouver, BC, Canada
Crazed123 wrote:
As to using it in an OS... I see no reason why you couldn't put the JIT compiler into a library or module and simply attach its inputs and outputs to memory locations instead of files.


There is no JIT compiler in Singularity for many reasons... Read the papers. Bartok compiles MSIL to x86, much like ngen, only Bartok is more sophisticated.

_________________
Top three reasons why my OS project died:
  1. Too much overtime at work
  2. Got married
  3. My brain got stuck in an infinite loop while trying to design the memory manager
Don't let this happen to you!


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 4:15 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
That seems a good deal more efficient.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 4:18 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
Brynet-Inc wrote:
You seem to freely defend your opinion.. but call other people "Weenies" if they have opinions of their own.. This is how you're hypocritical.

What got you branded as a Weenie was calling Singularity and C# "an abomination". Simply insulting something without actually making a point against its technical merits is the Mark of the Weenie.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 4:27 pm 
Offline
Member
Member
User avatar

Joined: Tue Oct 17, 2006 9:29 pm
Posts: 2426
Location: Canada
Crazed123 wrote:
What got you branded as a Weenie was calling Singularity and C# "an abomination". Simply insulting something without actually making a point against its technical merits is the Mark of the Weenie.


Because they are abominations, True this was a personal opinion..

But I'm free to have a personal opinion just like you are, I also have equal dislike for Java and using Interpreted languages like Python or Perl..

Why? Because I see them as fundamentally flawed.. Some languages are getting less and less sophisticated and let have no place in the world of system programming.

You seem to state countless personal opinions about peoples design choices.. (Your other topic as an example).

I'm definitely not a Weenie, but I'm going to tell people my opinion of the crap Microsoft produces.

A very good quote to live by:
The day Microsoft makes something that doesn't suck is the day they make a vacuum cleaner.

If you don't like what I have to say you're perfectly free to ignore me.. ;)

_________________
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 4:36 pm 
Offline
Member
Member
User avatar

Joined: Thu Jan 04, 2007 3:29 pm
Posts: 1466
Location: Noricum and Pannonia
Brynet-Inc wrote:
I'm as free to having a personal opinion as you are, I also have equal dislike for Java and using Interpreted languages like Python or Perl..

Less and less sophisticated? Are you joking? Are you saying that the only 'sophisticated' language is C? C and it's relatives are amongst the simplest languages. Have you ever tried Lisp, Haskell, etc? (And, to note, Python is much more 'sophisticated' than C.)

_________________
C8H10N4O2 | #446691 | Trust the nodes.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 5:01 pm 
Offline
Member
Member
User avatar

Joined: Sat Oct 23, 2004 11:00 pm
Posts: 1223
Location: Sweden
Hrmm.. If you know that you'll get angry responses by writing something, then for the sake of this forum, don't write it. Punch a hole in the wall instead. :P

_________________
"Simplicity is the ultimate sophistication."
http://bos.asmhackers.net/ - GitHub


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 5:02 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
Brynet-Inc wrote:
Why? Because I see them as fundamentally flawed.. Some languages are getting less and less sophisticated and let have no place in the world of system programming.

So exactly how and why are all interpreted languages "getting less and less sophisticated"?


Top
 Profile  
 
 Post subject: Re: .Net OS
PostPosted: Wed Feb 28, 2007 6:20 pm 
Offline
Member
Member
User avatar

Joined: Sat Oct 21, 2006 5:29 pm
Posts: 275
Location: Brisbane Australia
phantom wrote:
Hi all,

since I saw the Singularity videos on Channel 9 I've wanted to try to make an OS in c#. My main problem is that I don't have any experience in programming compilers and I can't find any information about it on the internet. So my question would be does anybody know a free or open-source msil to x86 compiler or a website with information about making one?

Thanks


The MSIL is an open standard "protocol", which means that you can download the specifications.

Qoute from uk.builder.com
Quote:
CTS/CLS
The MSIL Instruction Set Specification is included with the .NET SDK, along with the IL Assembly Language Programmers Reference. If a developer wants to write custom .NET programming languages, these are the necessary specifications and syntax. The CTS and CLS define the types and syntaxes that every .NET language needs to embrace. An application may not expose these features, but it must consider them when communicating through IL.


That aside, Why C#, If you like the extra utilities that C# offers, you will still have to implement them yourself. If you like C# for it's OO, then try C++ (everything you can do in C# you can do in C++ (and anything you can do in C++ you can do in C), except garbage collection, which can be emulated in C++ using a wrapper class), the only thing left is that you've been hypnotized by advertising. Well, in OS development you will some where discover the Alternative and wonder why you hadn't found it before(I'm talking about Unix)).

_________________
Image
Microsoft: "let everyone run after us. We'll just INNOV~1"


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 6:27 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
If you really want C#'s better OOP features, try Object Pascal. Microsoft bought the guy who designed Object Pascal for Borland straight off them and assigned him to C#. Wouldn't you know it, there's a bizarre resemblance...


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 6:56 pm 
Offline
Member
Member
User avatar

Joined: Sat Oct 21, 2006 5:29 pm
Posts: 275
Location: Brisbane Australia
Crazed123 wrote:
C# is not the intermediate language. C# is a high-level language with C-like syntax and a feature-set mostly stolen from Java and Delphi that happens to compile to Microsoft's Common Intermediate Language.

This is the exact reason I hate M$.
Let me make that a template for you if you ever have to say something about a M$ product product again

<insert M$ product> is not <insert competitors product> . <insert M$ product> is a <insert misconception> and a feature-set mostly stolen from <insert competitors product(s)>, that just happens to <insert contradiction to the previous misconception>.

_________________
Image
Microsoft: "let everyone run after us. We'll just INNOV~1"


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 7:17 pm 
Offline
Member
Member

Joined: Tue Nov 07, 2006 7:37 am
Posts: 514
Location: York, England
Singularity is a terrible idea. The idea of an operating system is to run code on a processor and manage it. Not in order to get inbetween the processor and program. The slowdown it causes is unacceptable and singluaritys concept, while good, has been terribly implemented.

A far better system would be better hardware context switiching, or (given the 64GB address space that make Singularity possible) for speciifc process protection that takes no switiching. There is too much concern about adding more software to balance hardware problems instead of a better, streamlined computer architecture that makes it simpler and far faster.

I advise you do not try writing a compiler for MSIL at the low level, though if you want to get on the side of Windows Users it should be implemented in the Upper levels. The thing that sickens me is this makes the idea of writing an OS in VB all that more realistic.

Also ignore the blasphomy, Singularity is not faster because it is better. It has none of the backward services Windows runs, none of the stupid backward compatability windows runs and Windows would be faster if implemented in a single Giant address space, which really would not be that hard.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 7:59 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
Tyler wrote:
A far better system would be better hardware context switiching, or (given the 64GB address space that make Singularity possible) for speciifc process protection that takes no switiching. There is too much concern about adding more software to balance hardware problems instead of a better, streamlined computer architecture that makes it simpler and far faster.

You know how Windows sucks because it started with a bad design, never had any extensibility or orthogonality, kept adding "features", never broke backwards compability, and somehow wound up dominant? Well x86 is the Windows of the architecture world.

In fact, I dare say that there has never been a "micro-architecture" that could support various architecture "personalities" in software the way a microkernel like L4 can support operating-system personalities in user-space.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 28, 2007 8:03 pm 
Offline
Member
Member

Joined: Tue Nov 07, 2006 7:37 am
Posts: 514
Location: York, England
Too true... i have nightmares about the bad code that sits on the worlds important computers because of those too companies. I do not see why i they cannot just restart, we have to transition to 64-bit anyway.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 91 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 7  Next

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 2 guests


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 post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group