This forum is in permanent archive mode. Our new active community can be found here.

Books and website recommendations for getting into OSs in general?

edited November 2008 in Technology
Any recommendations? The theory behind operating systems and all the mechanics really intrigue me.

Comments

  • ......
    edited November 2008
    Go follow Computer Science at a university. Or use Google. Really, I searched for "theory behind operating systems" copied from your post and the second result was a university course page with pdf files for every lecture.
    Post edited by ... on
  • edited November 2008
    Think what he is looking for are resources that other people already use and would recommend to someone getting into the subject. For example, I've tried to get into computer programming many times, usually by searching for tutorials online. I never got anywhere. It was only when I listened to the geeknights episode about getting into computer programming did I find a resource that worked for my level (my level being programming in Basic on an Amstrad 464).

    The first PDF on that page is far beyond my level it isn't even funny. By the second page I was encountering TLA's I had no clue about. So I don't think there is any need to be snarky about a reasonable request like the one above.
    Post edited by Luke Burrage on
  • edited November 2008
    Do you want to know things or be able to do things? In the former case, Wikipedia is your friend as long as you know what you are looking for. What worked for me, and what I would suggest you do, is first find out about the x86 architecture. Find out how a processor adds two numbers. Find out how the processor finds those numbers and read up on address space (and find out why in Windows, for a time, you couldn't have more than ~750 megs of RAM) and how everything (keyboard, RAM, mouse, etc) has to have and address.

    Once you have even a rudimentary grasp of what goes on at the very low level, you can start to appreciate what the kernel of an operating system has to do. From there you can then start learning about different ways of building a kernel. This is a classic discourse on two very different ways.

    All of this will not help you one bit in learning how to do anything. For that (assuming you know how to code at least a bit), I would suggest simply checking out the Linux kernel source code and starting small, e.g., looking at the source code for the "ls" command. Try adding an option and see if the kernel still compiles (hint: Don't be sad if you fail, ls is used everywhere in the operating system so this can be really, really difficult).
    Post edited by Dr. Timo on
  • The first PDF on that page is far beyond my level it isn't even funny. By the second page I was encountering TLA's I had no clue about. So I don't think there is any need to be snarky about a reasonable request like the one above.
    This is why my first suggestion was to follow Computer Science. You need to have a basic level of knowledge before you should go into learning something like Operating Systems. I wasn't being snarky on purpose. Just stating the truth.

    As for your computer programming, did you ever try those tutorials for real? Every tutorial I've found for a specific programming language starts with the basics and is pretty clear and easy and does a very decent job at teaching you the basics of that programming language.
  • edited November 2008
    I've tried to get into computer programming many times, usually by searching for tutorials online. I never got anywhere. It was only when I listened to the geeknights episode about getting into computer programming did I find a resource that worked for my level (my level being programming in Basic on an Amstrad 464).
    This, How to Think Like a Computer Scientist, is your best bet.
    Post edited by Cramit on
  • This is why my first suggestion was to follow Computer Science. You need to have a basic level of knowledge before you should go into learning something like Operating Systems. I wasn't being snarky on purpose. Just stating the truth.

    As for your computer programming, did you ever try those tutorials for real? Every tutorial I've found for a specific programming language starts with the basics and is pretty clear and easy and does a very decent job at teaching you the basics of that programming language.
    What the basics are for you are not the basics for me. I tried really hard, but I never actually got to the point where I could even open a program and have it run. All the tutorials started off at a basic level for someone who already knows what a development environment might be, or understands what assigning memory might mean. This kind of thing is way beyond what it took my 12 year old self to program three room text based adventures in basic.
    This,How to Think Like a Computer Scientist, is your best bet.
    Exactly. I didn't even know such a thing as terminal based interpreters existed, and to me Python was just another name in the huge list of languages, any of which could have been more or less suitable to my needs.It turns out that book was perfect for me. I've now started a project I've wanted to make for years, and I have about 2000 lines of code written from scratch. All it took was the initial advice.

    "Just fucking Google It" is often the best answer. But not always.
Sign In or Register to comment.