Thread: Operating system construction

  1. #1
    hacker in training AdamLAN's Avatar
    Join Date
    Sep 2004
    Posts
    56

    Cool Operating system construction

    I have some ideas for a great operating system, but I still have no clue as to how OS's are created. If anyone has any information, I'd appreciate it.

    My basic idea is to have all files be the same, read with an advanced software which determines the method of reading it (image, text, music) based on a segment of code at the begining of the file. The memory is constructed as a four dimensional "room", where every file is an "event", and the user can specify where in all four dimensions the event they're looking for is. They can name the spaces too. The internet can simply be a door to other rooms. Files aren't traded between computers, rather, a file is sent into the other computer (which has to be verified by the other's security system), which runs its password and reads the file, and then sends the information back to the user's computer through a higher-dimension information stream, which would be encrypted. Every computer has a security system, which exists in a higher dimensional area of the computer (inaccessible to others. It has the ability to scan through the whole memory for anything foreign, without being directly involved. there can also be another redundancy security system which monitors the primary security system).


    UPDATE***
    Basically, all files are of the same type, run by the same program. This program decrypts the files, then determines the type of output based on a segment of numbers. It then reads the file's information. Memory is stored in a four dimensional array, with a fifth dimensional security system overlooking it, for anything that doesn't belong. All files contain special numbers, some coming from an ID number in the security system (inaccessible anywhere else), some coming from the storage location of the file, which are randomized and stored in a location on the file. When a file is created or brought in from another computer, it is given these numbers. If a file doesn't have them, it is quarantined.

    If a file attempts to modify the OS without the verifying information, then it is deleted. The ID numbers cannot be picked out from the numbers in other files, because it is encrypted, so there is no way to fake them. This controls which files can modify the OS. If a file will modify the OS, then it is verified and run by the OS, so that it will make its modifications. The security system also monitors what is being done to the OS at all times, controlling that too.

    I've never seen Tron.

    I will try and figure out exactly how to explain it, and type it up then.
    Last edited by AdamLAN; 02-27-2005 at 03:41 PM. Reason: make a correction

  2. #2
    Registered User
    Join Date
    Aug 2001
    Posts
    244
    uh... do you know that a file isnt neccessairily that thing you click in the explorer?
    on low level files are used to communicate.
    low level read and write accept a handle to a file descriptor for reading and writing.
    these functions dont care wheter the "file" is a physical file on the hard disk, a connection to another computer, or a connection to some piece of hardware.


    what you might want to do is to write youre own "explorer" which maps filenames to additional information (or decides what to do on the content) on what to do with them.
    all stuff you mentioned is HIGH level. thats beyond the purpose of an operating system - but in the scope of system tools.
    Last edited by Raven Arkadon; 02-26-2005 at 08:16 PM.
    signature under construction

  3. #3
    Carnivore ('-'v) Hunter2's Avatar
    Join Date
    May 2002
    Posts
    2,879
    It would be interesting to see an operating system that is built up to such a high level that 'explorer' programs would have no choice but to accept information in that format, i.e. the low-level workings are completely hidden by the OS and applications only have access to an interface that operates as outlined. I suspect, however, it would be highly impractical, nigh impossible to develop software for, slow, bug-ridden and highly insecure.

    Seeing the impossibility of the scope of this project at AdamLAN's current skill/knowledge level (or, at least, his skill level as I perceive it - no offence or anything), I suggest this thread be moved to GD, Tech or Projects.
    Just Google It. √

    (\ /)
    ( . .)
    c(")(") This is bunny. Copy and paste bunny into your signature to help him gain world domination.

  4. #4
    Registered User
    Join Date
    Sep 2004
    Posts
    11
    you can get OSDev forum here, but this forum is about c++.
    www.mega-tokyo.com/forum

  5. #5
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,660
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  6. #6
    PC Fixer-Upper Waldo2k2's Avatar
    Join Date
    May 2002
    Posts
    2,001
    sounds like you've watched TRON too many times...It's good to see that you have some ideas, but what you're thinking of implementing is very insecure. If you're willing to go to such lengths for security, then a tag at the beginning of a file should not determine what level the file can be accessed at. And you also seem to be looking at it from the wrong angle. Security relies not on how to read the file, but what you allow programs to do to the operating system. For instance, in *nix, you have to be root to screw anything up. It doesn't really matter if the file is executable or simply an image, the operating system will handle it by calling up the program that the user associates that file type with (like .txt should open with notepad, etc.), the current permissions of the calling procedure dealing with the file is where the security hole is. I think you'd be better off taking a operating system (*nix, bsd) that's already very secure, and adding your higher level protocols on top of that. Then I think you may be able to do something worthwhile with your ideas.
    PHP and XML
    Let's talk about SAX

  7. #7
    Registered User
    Join Date
    Jan 2005
    Posts
    21
    osdever.net is also very good it has tutorials and all.

  8. #8
    Registered User
    Join Date
    Feb 2005
    Posts
    19
    Operating systems are difficult to implement. I have studied about them. You have to implement not only the file system but also handle interrupts and create an environment programs to run. I originally wanted to make an operating system as one of my projects but then when I realized how difficult it is I got very discouraged. You've got to know at least a little bit of assembly to make an operating system and you have to know how to write good interrupt handlers. I used to think that interrupt handlers were easy to write but I found out they have a lot of restrictions. Feel free to build your operating system but I'm telling you don't do it! Leave that to the Debian people. You could alternatively write an environment like Windows using Allegro and then couple it with DOS. That way you have a platform for the operating system to sit on. That's how Microsoft made Windows 3.1.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Operating System Project
    By Pete in forum Projects and Job Recruitment
    Replies: 1
    Last Post: 07-15-2004, 09:33 AM
  2. What is a Microsoft Operating System Like?
    By Troll_King in forum A Brief History of Cprogramming.com
    Replies: 35
    Last Post: 10-21-2002, 07:36 AM
  3. Operating system
    By sopranosomega in forum C Programming
    Replies: 6
    Last Post: 10-07-2002, 06:12 AM
  4. What operating system are YOU useing?
    By RoD in forum A Brief History of Cprogramming.com
    Replies: 36
    Last Post: 09-14-2002, 10:02 AM
  5. Microsoft = The Best Operating System
    By Troll_King in forum A Brief History of Cprogramming.com
    Replies: 92
    Last Post: 02-08-2002, 01:32 PM