Page 1 of 2 12 LastLast
Results 1 to 10 of 11

Thread: Operating System Theory

  1. #1
    Senior Member gore's Avatar
    Join Date
    Oct 2002
    Location
    Michigan
    Posts
    7,177

    Operating System Theory

    Ok, if you don't think this is the right place for something like this than move it.

    Operating System theory. Made by: gore.

    Written in: Vi. (Yup I'm hardcore.)

    I made this because I'm really bored right now but also relaxed. I just got home from work and I decided I wanted to write something. So I picked one of my favorite subjects in the computer world; OSs. (Security and BOFHism is up here too.)

    This document made in the leet ass Vi editor is very opinionated. While writing this I will give my opinion when I see fit. If something affends you or I attack your favorite OS or platform...To damn bad. Hehe.

    So?

    What Is an Operating System?

    An Operating System, which I will call an OS for the rest of this, is the software that makes it possible for you to start the basic functions of a computer. All computers must have an OS. It is the basis betwen hardware and software. (And annoyances if you use Windows 95, or ME.) Without an OS a computer is nothing more than a box with electronics stuffed inside. If your an Amiga user even with the OS it's still just...heh I'll be nice.

    There are thousands of OSs in existance, but not many actually catch on to people.Most OSs you come into contact with are "desktop OSs" and most are easy to use, or at least easy to figure out. Some desktop OSs are: Windows 95/98/ME (The big bad blue bad ass 9x systems....Blue meaning the color you see most on these.) Windows NT, the sadomasochist special, Windows 2,000 ; which is a slight improvement but to be honest it is NOT on my happy list...I think NT was better. Windows XP; Finally Microsoft figures out a winning combo. It's actually good and works!

    UNIX...Heh, great OS but owned by *******s right now. Solaris, Made by Sun, better than given credit for. Linux, Made by a Minix hacker named: Heh like everyone and there dog spanky doesn't know; Linus. (In case your wondering, yes I am throwing in punctuation as I go along. HEHE.)

    Mac OS: To be honest, they get alot of **** from people but if you ever want an OS that works in sync with Hardware this would be it. Mac OS has had it's low time but Mac OS X is based on BSD, which makes it stable as hell, Also, Windows 95 was made so idiots coming from calculators could use a computer, well Mac OS was made so rednecks coming from ATM machines could use one.

    So if you looked up OS in the true sence, what would you find? well: An OS is a set of the most basic set of programming instructions to the lowest level of computer hardware, making a basic layer of code that just about all other applications are built to.

    A desktop OS is generally used on a desktop computer (I know your shocked, so was I, who wouldv known????) And is usually used by one person at a time, and may or may not be connected to a network.

    Also part of the discussion are server OSs. Server Oss are usually ran on (oh come on, guess) Servers. Server OSs are usually ran on more powerful machines on a network, allowing multiple users to access information such as: Email, files, and software.

    In It's Lowest form, an OS takes care of Basic input and output functions, which let other programs talk to the computer hardware. (And crash when it becomes confused like Windows ME does.) It is basically the job of the input/output functions to take requests from the software a user runs and translate them into low level requests that the hardware can understand and act upon. (or lag and crash like Windows ME.)

    An OS acts as an interface between software and hardware. Some OS jobs include:

    Hand input from the keyboard and mouse.

    Handle output to the screen and printers

    Handle communications using a modem or NIC

    Handle network communications like the internet

    Control input/output with all bus devices, like a NIC.

    Control information storage and retrieval using various types of disk and CD-ROM drives

    Enable Multi Media use for voice and video reproduction, like for example, playing a Music CD.

    The OS communicates directly with all of these devices. (kind of makes YOUR job not seem so hard doesnt it?) Some OS programs talk to specific hardware (chips) inside the computer. This code is called a "Device Driver". A device driver translates computer code to display text on a screen, or translates movements of a mouse into action, for example.

    A separate device driver is usually present for each individual device inside the computer. In general, OSs have a standardized way to communicate with a certain type of device driver. The device driver then contains the actual code/instructions to communicate with the chips on the device. This is good, this way, if another peice of hardware is introduced into the computer, the OS code does not have to change. (Wouldnt THAT be a bitch.) All that needs to be done to make the computer capable of communicating with the new device is to load a new device driver into the OS.

    You can basically say that in it's most basic form, an OS provides a level of management among the application programs, the user, and the computer. This level of management, allows application programmers to concentrate on applications that will runon any hardware, as long as the OS can control them. In other words, an application program can submit a general request to the OS, such as "write this to disk" and the OS will handle the details. The application programmer doesn't have to worry about how to queue data, update the disk directory, or physically copy the data from memory to the disk drive.

    There are some applications, particularly those designed for DOS and UNIX (the early versions) that directly access hardware devices. At one time, many programmers designed code to do this to improve overall application performance, but this usually meant software incompatibility. Although softwareperformance may be improved by writing directly to I/O ports or other hardware devices, it isn't necessarily good programming practice. (Even though it is still done for some speciffic needs.)

    I also made it an attachment in case you actually like it.
    When I get more time I'll add more to this. It's a start though.

  2. #2
    Leftie Linux Lover the_JinX's Avatar
    Join Date
    Nov 2001
    Location
    Beverwijk Netherlands
    Posts
    2,534
    The OS communicates directly with all of these devices. (kind of makes YOUR job not seem so hard doesnt it?) Some OS programs talk to specific hardware (chips) inside the computer. This code is called a "Device Driver". A device driver translates computer code to display text on a screen, or transaltes movements of a mouse into action, for example.
    Ehm... Windows usualy doesn't talk to hardware directly (directx etc..)
    But on the other hand Windows isn't realy an OS either..

    Nice info gore.. I'm keeping it..
    ASCII stupid question, get a stupid ANSI.
    When in Russia, pet a PETSCII.

    Get your ass over to SLAYRadio the best station for C64 Remixes !

  3. #3
    Senior Member gore's Avatar
    Join Date
    Oct 2002
    Location
    Michigan
    Posts
    7,177
    Thanks. Also for the talking to hardware, Im meaning OSs in general, not Windows. I know it doesnt do alot of talking to hardware directly. I meant OSs in general when I said that, not meaning any one in particular and not one in any given decade. But anyway thanks for the feed back.

  4. #4
    er0k
    Guest
    Originally posted here by the_JinX


    Ehm... Windows usualy doesn't talk to hardware directly (directx etc..)
    But on the other hand Windows isn't realy an OS either..

    Nice info gore.. I'm keeping it..
    the_Jinx >> I still say you write an os and call it "the_Jinux"

  5. #5
    Senior Member gore's Avatar
    Join Date
    Oct 2002
    Location
    Michigan
    Posts
    7,177
    Originally posted here by er0k


    the_Jinx >> I still say you write an os and call it "the_Jinux"
    Heh, wasnt one "jinxed" OS enough? Do we really want another Windows ME running around?

  6. #6
    Leftie Linux Lover the_JinX's Avatar
    Join Date
    Nov 2001
    Location
    Beverwijk Netherlands
    Posts
    2,534
    JinXed OS

    no hardware support
    crashes atleast once an hour
    version numbers hop all the way

    sounds like Windows to me

    But I do think I could make a nice "live cd" OS and call it JinXed OS

    now where did I leave that "how to make a live cd" tutorial...
    ASCII stupid question, get a stupid ANSI.
    When in Russia, pet a PETSCII.

    Get your ass over to SLAYRadio the best station for C64 Remixes !

  7. #7
    Good write up gore, very informative:
    I find the 'from power to bash' article I read a while back also a good resource.
    perhaps you are interested:
    http://gok.customer.netspace.net.au/...ower2bash.html
    Then there also is the 'linux from scratch'
    http://www.linuxfromscratch.org/ if you want to build your own linux distro from ...scratch.

    Once again, good information !

    the_JinX your manual is here
    http://www.osnews.com/story.php?news_id=3747


    Cheers
    noODLe

  8. #8
    Senior Member
    Join Date
    Jun 2002
    Posts
    394
    greetings,

    this link is essential in this thread. yes, i have posted it here before.

    http://www.williamstallings.com/OS4e.html

    things that an OS has to do / deal with:

    Processes - description and control ( does anyone have any uber graphics of the xeon process control block? ) monitors, semaphores. deadlock, concurrency, mutual exclusion, preemption etc.
    Memory - how virtual memory works. memory management. paging, segmentating, granularity etc. principle of locality, thrashing.
    Scheduling - process scheduling, thread schedeuling, smp schedeuling, real-time schedeuling, algorithms etc...
    I/O and Files - how does the OS talk to a disk? logical and physical file structures?
    Distributed Systems - tcp/ip, networking, client/server computing, clusters etc.
    and of course,
    Security - interesting area this? or is it?

    i would go into more detail, but this is not my tutorial.

    there is SO much to the generic operating system...and thats before you go comparing them.

    for example, linux's virtual memory management has the three level page table structure (originally designed for the 64bit Alpha processor to be platform independant), page allocation and replacement algorithms, and of course kernel memory allocation is probably a days reading in itself, and then some.

    this can be compared to (and contrasted from) the windows virtual address map.

    a world appart, but TRUE OS theory binds them by their purpose. doing similar things in different ways.
    Hmm...theres something a little peculiar here. Oh i see what it is! the sentence is talking about itself! do you see that? what do you mean? sentences can\'t talk! No, but they REFER to things, and this one refers directly-unambigeously-unmistakably-to the very sentence which it is!

  9. #9
    Senior Member gore's Avatar
    Join Date
    Oct 2002
    Location
    Michigan
    Posts
    7,177
    May not be your tut but you can add what you want to it to make it a good thread all around. Iv been stdying OSs for a few months now. It's interesting to me. Damn Iv wanted a XEON processor for a while.

  10. #10
    OS Theory PDF File

    OS Theory 2 PPT File

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •