First Post!!

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
Post Reply
Wizecoder
Posts: 2
Joined: Sat Jun 20, 2009 6:54 pm

First Post!!

Post by Wizecoder »

I have officially joined the OS Dev community!! :D

First a bit of background. I have been programming in c++ for about 2 years now, mainly in game development. About a week ago i started looking into OS dev and found the forums and wiki here.

At the moment i don't have much of a plan of what i want my operating system to do but some of the main things i am thinking of so far are things like an easy to use file system(seperates the files that make the programs function from the files that are outputed by the programs), and an easy way to install other operating systems on the same system(sortof like bootcamp). Thoughts, suggestions?

I also have a couple questions. First, how would someone give the OS user the ability to develop with Opengl? Second, my development setup that i am thinking of so far is Cygwin, and NASM, using Notepad++ for editing all on windows vista. Any thoughts on this? Third, about how well would i need to know assembly(tutorials please) and c++ to develop an OS?

Thanks and expect more questions in the future. :P
User avatar
VolTeK
Member
Member
Posts: 815
Joined: Sat Nov 15, 2008 2:37 pm
Location: The Fire Nation

Re: First Post!!

Post by VolTeK »

Congrats, welcome to the forum. note that before you ask any questions check the wiki or google any questions before asking questions here, the wiki is the second option before going to the forum.

but please, put announcement posts like this one in the anouncements catagory.


enjoy your stay
User avatar
01000101
Member
Member
Posts: 1599
Joined: Fri Jun 22, 2007 12:47 pm
Contact:

Re: First Post!!

Post by 01000101 »

Moved to the Announcements forum.

Welcome to the forums! Most questions can be answered in the Wiki (link in the upper right-hand corner of the index page).
Wizecoder
Posts: 2
Joined: Sat Jun 20, 2009 6:54 pm

Re: First Post!!

Post by Wizecoder »

I have been reading the wiki quite a bit already but the questions i am asking either are not on the wiki or are just to see if anyone has a personal opinion on any of it. Sorry if any of those questions shouldn't have been asked.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: First Post!!

Post by Brendan »

Hi,
Wizecoder wrote:I have officially joined the OS Dev community!! :D

First a bit of background. I have been programming in c++ for about 2 years now, mainly in game development. About a week ago i started looking into OS dev and found the forums and wiki here.
Welcome to the forums!
Wizecoder wrote:At the moment i don't have much of a plan of what i want my operating system to do but some of the main things i am thinking of so far are things like an easy to use file system(seperates the files that make the programs function from the files that are outputed by the programs), and an easy way to install other operating systems on the same system(sortof like bootcamp). Thoughts, suggestions?
There's already an easy/standard way to run multiple operating systems on the same computer. The problem is that (regardless of how this is done) different OSs need to cooperate to avoid messing each other up, and some people (Microsoft) don't want to cooperate and deliberately make stupid decisions (like setting the RTC to local time as default, and not providing an option to avoid trashing the MBR when the OS is being installed) to make running multiple operating systems (including different versions of Windows) harder.
Wizecoder wrote:First, how would someone give the OS user the ability to develop with Opengl?
OpenGL is just a library. You'd write an OS, then write video drivers, GUI, etc, then write an OpenGL library. If the video drivers, GUI, etc are designed with OpenGL in mind then the OpenGL library might be a thin layer on top of the OS's video interface; and if the video drivers, GUI, etc are designed with something else in mind then the OpenGL library might be more complex. For example, if the video interface is a very simple "blit_my_buffer(unsigned char *address_of_my_buffer);" thing then you'd need to implement a full 3D rendering pipeline in the OpenGL library.
Wizecoder wrote:Second, my development setup that i am thinking of so far is Cygwin, and NASM, using Notepad++ for editing all on windows vista. Any thoughts on this?
I'd recommend using whatever you're most comfortable with.

However, IMHO Cygwin is an attempt to get a square peg (standard Unix tools like GCC, G++, LD, BASH, etc) to fit in a round hole (Windows), and it might be fun to try the same square peg in a square hole (e.g. try running standard Unix tools on a Unix clone like FreeBSD or Linux).
Wizecoder wrote:Third, about how well would i need to know assembly(tutorials please) and c++ to develop an OS?
You don't need to know much assembly at all, and it's probably easy to find some inline assembly snippets that do everything you need (assuming you build your OS on top of something like GRUB). The hard part is understanding the CPU - things like different operating modes, how paging works, how caching works, etc (where you'll end up spending months reading through CPU manufacturer's manuals and/or tutorials, etc even though you don't need to use assembly).

I've never used C++, but from what I've heard you need to write your own run-time support code before you can use some of the more advanced C++ features. If you're nice, we'll let you read about using C++ in our secret book of elite knowledge. :)


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
User avatar
Troy Martin
Member
Member
Posts: 1686
Joined: Fri Apr 18, 2008 4:40 pm
Location: Langley, Vancouver, BC, Canada
Contact:

Re: First Post!!

Post by Troy Martin »

Brendan wrote:If you're nice, we'll let you read about using C++ in our secret book of elite knowledge. :)
And what a wonderful secret elite book it is!

Welcome to the forums! The wiki is always open for you to read (and edit, if you join the wiki usergroup) and contains a decent amount of elite knowledge. Other great reference materials are the all-holy Intel Developer's Manuals. Google "Intel Manuals" for them. They're arranged into five volumes (1, 2A, 2B, 3A, 3B) to make downloading quicker, but it's probably a good idea to grab them all while you're at it :)
Image
Image
Solar wrote:It keeps stunning me how friendly we - as a community - are towards people who start programming "their first OS" who don't even have a solid understanding of pointers, their compiler, or how a OS is structured.
I wish I could add more tex
Post Reply