Page 1 of 1
I need lots of help
Posted: Sat Jun 06, 2009 5:13 pm
by watachiaieto
I have not done much programming, only batch files, so i was wondering what all the types of programs i will need. I have a Compiler, I have Code Block (is code block necessary, or can i use notepad?) and what other types of programs will i need? also, what languages will be necessary to learn, and where can i learn them at? seems like making an OS is going to be hard. how did bill gates make his without all this software!!!
Re: I need lots of help
Posted: Sat Jun 06, 2009 5:24 pm
by piranha
Re: I need lots of help
Posted: Sat Jun 06, 2009 5:29 pm
by neon
I have not done much programming, only batch files, so i was wondering what all the types of programs i will need.
I
highly recommend to put any of your big goal projects away for now and focus on learning to program. The only program that is actually "needed" is an assembler. Others might be compiliers, linkers, etc., that depend on your high level language (HLL) if you decide to use one.
how did bill gates make his without all this software!!!
He didn't make an OS, the company did. Also, they developed it using C and assembly.
Re: I need lots of help
Posted: Sat Jun 06, 2009 6:18 pm
by Cjreek
Hi,
Only to make sure, you did understand what's been said before. You CANNOT write your own OS without having ever coded.
I'm coding since I'm 15. That's about 5 1/2 years. I started with OS Dev a week ago or so. And I can tell you it's damn hard to get into this even though I've got quite much experience in writing common programs.
So I advise to learn C++, Pascal, Delphi, Java or something and collect MUCH experience while writing any programs for windows or linux. And well.. some month or weeks later you might be able to start writing your own OS.
As I mentioned before... I'm an absolute beginner in this part of coding, so even I will underestimate this whole thing for sure.
This post is not supposed to take away your interest in coding, but to protect you from a huge dissappointment
When I startet with coding first I wanted to code my own 3D game. There's no expression which would describe how I failed
So I suggest you to buy a little book where you are teached how to code. From experience I can say, that (only) tutorials from the internet (mainly at the beginning) might not be the best start.
Well, I wish you good luck and first of all: fun while learning a programming language
Cjreek
Re: I need lots of help
Posted: Sat Jun 06, 2009 6:27 pm
by NickJohnson
neon wrote:how did bill gates make his without all this software!!!
He didn't make an OS, the company did. Also, they developed it using C and assembly.
Technically, MS never actually created (i.e. started) an OS, although they modified two heavily. MS-DOS was bought from Seattle Computer Products, and NT was bought from some ex-MS employees. But either way, Gates had relatively little to do with the actual writing of code. And everyone still had compilers and assemblers back then - C has been used since the 70's, so they must have had some sort of compiler - so whoever actually wrote those OSes wasn't at much of a disadvantage (except for VMs of course, they're really helpful.)
Re: I need lots of help
Posted: Sat Jun 06, 2009 6:31 pm
by watachiaieto
i have windows XP installed on dell laptop, and i have following programs, please allow me to know which programs i still need, or should delete, and get a different one:
I need a linker (where do i get one for windows xp with most features cause VAL seems old)
I have Cygwan for a compiler,
i have to have codeblock for the moment, but can i do the programming in notepad, or do i have to use this program (or a equivalent) and if so, should i use a different one?
Thank You Cj for advice, but i think i will jump in head first, what better way to learn to make software than make an OS? But i do think you are right about online stuff and how it usually jumps to advanced stuff.
Re: I need lots of help
Posted: Sat Jun 06, 2009 6:36 pm
by flyingdoodltartz
i recommend learning assembly before touching this stuff
.
http://www.csn.ul.ie/~darkstar/assembler/tut1.html
go there to learn assembly.
http://wiki.osdev.org/Real_mode_assembly_bare_bones
read that and after you finish that, make yourself a simple os in full assembly. (perhaps an os with a simple text driver? that's all im doing right now, and i've been coding for 5 years since i was 9)
Re: I need lots of help
Posted: Sat Jun 06, 2009 7:22 pm
by mathematician
neon wrote:I have not done much programming, only batch files, so i was wondering what all the types of programs i will need.
I
highly recommend to put any of your big goal projects away for now and focus on learning to program. The only program that is actually "needed" is an assembler. Others might be compiliers, linkers, etc., that depend on your high level language (HLL) if you decide to use one.
I agree. Writing an operating system is no way to learn how to program. Try something simpler first, and make sure you know C and assembly laguage very well before you even think of trying to write an operating system.
I have heard of trying to run before you can walk........
Also, although MS-DOS may be an ancient operating system, you can use it to learn how how to write things like interrupt handlers, and learn how hardware can be directly programmed. You can't do that in Windows (or Linux). I suppose that is why you can find it still being used by people learning assembly.
Re: I need lots of help
Posted: Sat Jun 06, 2009 8:57 pm
by neon
I have Cygwan for a compiler
Cygwin is not a compiler. Also, if you have Windows XP and are starting programming, get rid of it - you wont be using this for awhile.
but can i do the programming in notepad, or do i have to use this program (or a equivalent) and if so, should i use a different one?
Source code is just plain text, any editor will work.
but i think i will jump in head first, what better way to learn to make software than make an OS?
There is much more to programming then learning a language. When it comes to operating systems, it becomes more complex as you must also understand computer hardware architecture and systems programming design and theory.
This is why I
highly recommend against it.
This will start you off:
Assembly language e-books. Also contains links to some (not all) of the Intel architecture manuals.
cplusplus.com
Re: I need lots of help
Posted: Sat Jun 06, 2009 10:50 pm
by alethiophile
If you are dead set on learning programming by jumping straight in (which will work, faster than anything else IMO, if you are immune to frustration), then I would recommend writing a medium-sized project in userspace before writing an OS. Learning basic programming and machine architecture at the same time would be fairly overwhelming.
Re: I need lots of help
Posted: Sat Jun 06, 2009 11:20 pm
by kop99
I think first thing you have to know is C, C++ language.
It's a good program language for OS development.
And you need to know basic os concept.
So, I recommend "Advanced Programming in the UNIX" book.
Re: I need lots of help
Posted: Sun Jun 07, 2009 4:43 am
by mathematician
For learning C (which is what you need more than C++) you could do worse than read Kernighan and Ritchie's famous book, "The C Programming Language". It is probably still in print; if not you could probably get it second hand from Amazon.
But having learnt it, you will then need to unlearn some of it. Because, when writing an operating system, you can't use C's standard function calls to do anything - you have to write your own. Which is another good reason why an OS definitely should not be seen as a project for a beginner. You will have enough to do learning how to program, without reading the documentation for an IDE controller, or learning how to retrieve scan codes from the keyboard controller, or how an APIC works. All of that, and more, is taken care of for you in applications development - so learn how to write applications first.
Re: I need lots of help
Posted: Sun Jun 07, 2009 12:18 pm
by JamesM
You do not have the
Required Knowledge for this forum.
Thread closed.