James Molloy tutorial gone
James Molloy tutorial gone
^ It's disappeared off the web. Does anyone have a copy of the full tutorial source? Even though his code is kinda buggy, this was the only tutorial that was really allowing me to make progress as a total OS Dev newb.
Re: James Molloy tutorial gone
Hi,
I've just PM'd James - the whole domain appears to be down. In the meantime, has Google cached the info you need?
Cheers,
Adam
I've just PM'd James - the whole domain appears to be down. In the meantime, has Google cached the info you need?
Cheers,
Adam
- DavidCooper
- Member
- Posts: 1150
- Joined: Wed Oct 27, 2010 4:53 pm
- Location: Scotland
Re: James Molloy tutorial gone
Google has cached versions of a few of the pages:-
Index:-
http://webcache.googleusercontent.com/s ... index.html
1. Environment Setup.
Not available.
2. Genesis:-
http://webcache.googleusercontent.com/s ... nesis.html
3. The Screen:-
Not available.
4. The GDT and IDT:-
Not available.
5. IRQs and the PIT:-
Not available.
6. Paging:-
http://webcache.googleusercontent.com/s ... aging.html
7. The Heap:-
Not available.
8. The VFS and the initrd:-
Not available.
9. Multitasking:-
http://webcache.googleusercontent.com/s ... sking.html
10. User Mode:-
Not available.
Index:-
http://webcache.googleusercontent.com/s ... index.html
1. Environment Setup.
Not available.
2. Genesis:-
http://webcache.googleusercontent.com/s ... nesis.html
3. The Screen:-
Not available.
4. The GDT and IDT:-
Not available.
5. IRQs and the PIT:-
Not available.
6. Paging:-
http://webcache.googleusercontent.com/s ... aging.html
7. The Heap:-
Not available.
8. The VFS and the initrd:-
Not available.
9. Multitasking:-
http://webcache.googleusercontent.com/s ... sking.html
10. User Mode:-
Not available.
Help the people of Laos by liking - https://www.facebook.com/TheSBInitiative/?ref=py_c
MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
Re: James Molloy tutorial gone
Wow, that was quick! Thanks, guys.
What I really need is the actual source code for the tutorial parts themselves (or just the last one, since it has all of them), which didn't get cached by the crawlers. The tutorial pages are mostly just theory with snippets. But it's implementation details I get hung up on the most so it helps to see some actually-working code/generic implementation.
I guess it might only be available from James himself.
What I really need is the actual source code for the tutorial parts themselves (or just the last one, since it has all of them), which didn't get cached by the crawlers. The tutorial pages are mostly just theory with snippets. But it's implementation details I get hung up on the most so it helps to see some actually-working code/generic implementation.
I guess it might only be available from James himself.
Re: James Molloy tutorial gone
hi all!
well, it's only my second post but I think this can be helpful:
http://code.google.com/p/jamesm-tutoria ... e/checkout
well, it's only my second post but I think this can be helpful:
http://code.google.com/p/jamesm-tutoria ... e/checkout
Re: James Molloy tutorial gone
That's quite helpful, wikiwolf. It's clearer than James's own code about memory management, in my opinion. The threads and locks and stuff are a nice addition as well. But it's still missing critical sections from the tutorial like the simple VFS/initrd and Usermode/Syscall stuff James had in his code.
I really want to avoid trying to decipher Linux or other enterprise-grade implementations. All that optimized, macro-heavy, and black-magic-performing code is definitely not beginner-friendly. Even something relatively simple-ish like FreeDOS is filled with tons of voodoo code in my eyes.
Does anyone know of any other simple but comprehensive source-available OS projects/tutorials in case James's code doesn't become available again?
I really want to avoid trying to decipher Linux or other enterprise-grade implementations. All that optimized, macro-heavy, and black-magic-performing code is definitely not beginner-friendly. Even something relatively simple-ish like FreeDOS is filled with tons of voodoo code in my eyes.
Does anyone know of any other simple but comprehensive source-available OS projects/tutorials in case James's code doesn't become available again?
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: James Molloy tutorial gone
That is JamesM's code---he was working on a revised version of his tutorial. Either way, I for one hope it's gone forever because it does more harm than good. People mistake programming tutorials for sources of documentation when they are actually meant to be examples. Even more dangerous, they make people think they've learned something when they actually haven't.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
Re: James Molloy tutorial gone
Some people learn better when you show them an engine working and let them tinker around with it a bit rather than just explaining from what pieces one could maybe be assembled. And usually one that's intentionally naive for the ease of learning.
Most of the concepts of OS programming are so abstract that someone might spend weeks reading about the details of what they potentially could entail and still have no idea how to implement them since the "documentation" is vague by its very nature. I'd love to see some concrete documentation that's completely clear on all the implementation details for something like a memory manager, virtual file system, or system call interface. James's tutorial code at least gets you through the front door on a lot of the basics. It's pretty much the only one I've been able to find that actually does more than show you how to do the things that do have concrete documentation like x86-specific descriptor table setup or VGA text mode manipulation and without blindsiding you with mind-bogglingly advanced concepts that require a lot of specific explanation behind the reasoning involved such as the Linux kernel source.
For hobbyists like myself that didn't have the luxury of learning systems programming in a classroom, such a simple and comprehensive tutorial/example while maybe not ideal is nonetheless indispensable in the absence (or ignorance) of better alternatives.
Most of the concepts of OS programming are so abstract that someone might spend weeks reading about the details of what they potentially could entail and still have no idea how to implement them since the "documentation" is vague by its very nature. I'd love to see some concrete documentation that's completely clear on all the implementation details for something like a memory manager, virtual file system, or system call interface. James's tutorial code at least gets you through the front door on a lot of the basics. It's pretty much the only one I've been able to find that actually does more than show you how to do the things that do have concrete documentation like x86-specific descriptor table setup or VGA text mode manipulation and without blindsiding you with mind-bogglingly advanced concepts that require a lot of specific explanation behind the reasoning involved such as the Linux kernel source.
For hobbyists like myself that didn't have the luxury of learning systems programming in a classroom, such a simple and comprehensive tutorial/example while maybe not ideal is nonetheless indispensable in the absence (or ignorance) of better alternatives.
Re: James Molloy tutorial gone
Love4Boobies wrote: Even more dangerous, they make people think they've learned something when they actually haven't.
Give them the blocks. Not the building.
They will create their own style of architecture'd houses.
Not the same house with a different mail box.
Re: James Molloy tutorial gone
Actually I use jamesm code for gdt, idt and interrupts/exceptions but before making a release I want to rewrite all the extraneous code in the system.
Since last year the project hasn't evolved so much, I'm still playing around with the pit, memory manager and exceptions: I mostly corrected bugs and studied the manuals... now I'm almost ready to rewrite and release.
Even if jamesm code is a little buggy, I think is a great starting point for newbies...
Since last year the project hasn't evolved so much, I'm still playing around with the pit, memory manager and exceptions: I mostly corrected bugs and studied the manuals... now I'm almost ready to rewrite and release.
Even if jamesm code is a little buggy, I think is a great starting point for newbies...
Re: James Molloy tutorial gone
Hi,
The site is not meant to be down. It looks like a problem with my DNS server - I've emailed my provider. Hopefully it'll be back up shortly, but who knows, it's Christmas season.
The Google Code project is indeed written by me as a rewrite of the tutorials on my site. It's almost complete, and I really should spend that bit extra time to properly finish the documentation. It's *so close*!
Cheers,
James
The site is not meant to be down. It looks like a problem with my DNS server - I've emailed my provider. Hopefully it'll be back up shortly, but who knows, it's Christmas season.
The Google Code project is indeed written by me as a rewrite of the tutorials on my site. It's almost complete, and I really should spend that bit extra time to properly finish the documentation. It's *so close*!
The point of this tutorial series was to show an example building. There are many resources that describe the "blocks", but there were none that showed how they fit together. Once you've seen how they fit together in a skeleton framework, it becomes easier to pull out a block and rewrite it. It also helps comprehension of the system as a whole for some people.GhostXoPCorp wrote:Love4Boobies wrote: Even more dangerous, they make people think they've learned something when they actually haven't.
Give them the blocks. Not the building.
They will create their own style of architecture'd houses.
Not the same house with a different mail box.
Cheers,
James
Re: James Molloy tutorial gone
Excellent - It's back already.
Thank you, James and happy Christmas!
Thank you, James and happy Christmas!
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: James Molloy tutorial gone
Heh, that's the answer I was expecting. Learning from examples is fine but no one can learn from examples alone---not because they are stupid but because examples contain very little information and because those examples work, it's easy to think they're enough. How would you like it if physicians and surgeons were educated by tutorials alone? Furthermore, "weeks" on studying theory, as you mention, are not nearly enough. I don't expect you to listen to me but I have a funny feeling you'll soon give up just like everyone else who thought they were special before you.
Of course, I mean no disrespect towards JamesM and his tutorial series. His intentions are obviously good; it's just that people are always looking for shortcuts and they never take anyone anywhere.
Of course, I mean no disrespect towards JamesM and his tutorial series. His intentions are obviously good; it's just that people are always looking for shortcuts and they never take anyone anywhere.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
- eryjus
- Member
- Posts: 286
- Joined: Fri Oct 21, 2011 9:47 pm
- Libera.chat IRC: eryjus
- Location: Tustin, CA USA
Re: James Molloy tutorial gone
Thank you! Exactly how I have been approaching it and it HAS been helpful. Your effort for our collective benefit is appreciated.JamesM wrote:The point of this tutorial series was to show an example building. There are many resources that describe the "blocks", but there were none that showed how they fit together. Once you've seen how they fit together in a skeleton framework, it becomes easier to pull out a block and rewrite it. It also helps comprehension of the system as a whole for some people.
Adam
The name is fitting: Century Hobby OS -- At this rate, it's gonna take me that long!
Read about my mistakes and missteps with this iteration: Journal
"Sometimes things just don't make sense until you figure them out." -- Phil Stahlheber
The name is fitting: Century Hobby OS -- At this rate, it's gonna take me that long!
Read about my mistakes and missteps with this iteration: Journal
"Sometimes things just don't make sense until you figure them out." -- Phil Stahlheber
- gravaera
- Member
- Posts: 737
- Joined: Tue Jun 02, 2009 4:35 pm
- Location: Supporting the cause: Use \tabs to indent code. NOT \x20 spaces.
Re: James Molloy tutorial gone
1. Why are you using somebody else's code?wikiwolf wrote:Actually I use jamesm code for gdt, idt and interrupts/exceptions but before making a release I want to rewrite all the extraneous code in the system.
Since last year the project hasn't evolved so much, I'm still playing around with the pit, memory manager and exceptions: I mostly corrected bugs and studied the manuals... now I'm almost ready to rewrite and release.
Even if jamesm code is a little buggy, I think is a great starting point for newbies...
2. How could your project be ready for release when it relies on known, flawed code?
3. Where exactly do you think you're going with this lack-luster effort?
17:56 < sortie> Paging is called paging because you need to draw it on pages in your notebook to succeed at it.