Hi
The only programming I know is some basic scientific programming using Python. Now I want to develop some software. I want to learn how to develop:
1. An operating system
2. Changing an existing (open-source) software written in C and/or C++ so that it loads when I boot my computer (for instance, an text editor that shows up whenever I turn on my computer). In other words, I want to code a computer program that I can dual-boot with Ubuntu and/or Windows 7.

So, my questions are:
1. What knowledge do I need?
2. What books/internet tutorials do you recommend?

Recommended Answers

All 4 Replies

Hi,

If you really want to develop an operating system, you should learn some C++. Take a look at the C++ forum for suggestions on books and tutorials.

However, what I suggest is that you start with some smaller projects, in order not to get bored with programming. Find a small project, which would be fun - e.g. make your own text editor with c++.

A final remark, I think you should be able to achieve what you want in 2 with just boot options. Depending on what you mean you might also need a small batch script.

Cheers

Hi
The only programming I know is some basic scientific programming using Python. Now I want to develop some software. I want to learn how to develop:
1. An operating system
2. Changing an existing (open-source) software written in C and/or C++ so that it loads when I boot my computer (for instance, an text editor that shows up whenever I turn on my computer). In other words, I want to code a computer program that I can dual-boot with Ubuntu and/or Windows 7.

So, my questions are:
1. What knowledge do I need?
2. What books/internet tutorials do you recommend?

For your stated purpose, you just need an Ubuntu install disk (or bootable flash drive) and a machine with Windows installed.

As for learning to write an OS, I'd say you probably want to start smaller than that. IIRC, Torvalds was trying to write a terminal emulator when he found himself writing Linux. Maybe you should start there...

In any case, C would be a good language to learn.

Thanks, I think I'll start by learning C++.

Sounds like a plan. Good luck. Pick up a copy of Sedgewick's Algorithms in C and work though the material there, if you haven't done DS&A yet. That stuff will really get your head ready for OS work.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.