OSDev.org

The Place to Start for Operating System Developers
It is currently Wed Jun 26, 2019 6:47 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: I'm new
PostPosted: Fri Oct 23, 2015 8:40 pm 
Offline

Joined: Fri Oct 23, 2015 3:36 pm
Posts: 12
Deleted


Last edited by d3crypt on Wed Feb 01, 2017 4:29 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Fri Oct 23, 2015 11:56 pm 
Offline
Member
Member
User avatar

Joined: Sat Jan 15, 2005 12:00 am
Posts: 8561
Location: At his keyboard!
Hi,

d3crypt wrote:
Hey, my name is Will Jones, but people call me d3crypt.
I live in Los Angeles California and I'm 17.
My main hobby is programming and I'm going to major in Computer Science at University of California Santa Cruz.
I have to say that this site is amazing. I already planned on making an OS, but I had no idea where to start.


Welcome to the forums.

The Getting Started wiki page might help if you have no idea where to start.. :)


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.


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sat Oct 24, 2015 5:32 pm 
Offline
Member
Member
User avatar

Joined: Fri Oct 27, 2006 9:42 am
Posts: 1456
Location: Athens, GA, USA
Greetings.

As Brendan said, the wiki has a goo deal of material about starting points and different things you can try (or try to avoid). You definitely want to read the Introduction, Required Knowledge, How to Ask Questions, and Beginners' Mistakes pages first thing, if only to get an idea of what's what.

I would definitely recommend starting by getting your tools in order. Before anything else, consider what you want for your target system, development host, emulator or virtualizer, toolchain, language(s), editor, and version control system, and get them set up for what you plan to do. Note that even if you want to use a different language, you should have a good handle on C and the target system's assembly language before you begin, if only because all OS work involves some amount of assembly coding, and most of the information about OS-dev is geared towards working in C. If you are using binutils (the GNU tools used by Linux, and the long-time favorite of most hobbyist OS devs), make sure you have a separate cross-compiler set up for your development work, and get familiar with writing Makefiles (or whatever build tool or project manager you have chosen).

Also, don't even consider working on a project this size without version control - if you don't have some way of rolling back changes, you will come to regret it. This is true of any larger development project, but doubly so for OS dev. VCS repository hosts like Github, Sourceforge and Bitbucket are usually free for open-source projects, and relatively inexpensive (or free) for private ones, and the effort of using them is trivial, so there's no excuse for not having a cloud repo.

A lot of people, including myself, have started out with writing a bootloader, but it is a lot of work for something that really doesn't move your kernel design forward. My recommendation is to use writing a very simple two-stage bootloader as a warm-up exercise, something to get you into the swing of assembly coding and low-level access, but not to rely on the result unless you are certain that your OS design won't work with an existing production-quality loader (which is very, very unlikely).

Beyond that, it is up to you. I would recommend reading the pages on "What Order Should I Make Things In", for both inspiration and a bit of a chuckle.

_________________
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
μή εἶναι βασιλικήν ἀτραπόν ἐπί γεωμετρίαν
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sat Oct 24, 2015 6:48 pm 
Offline

Joined: Fri Oct 23, 2015 3:36 pm
Posts: 12
Thanks for the information :D
So far I have decided to target the P6 Micro-architecture.
I have the cross compilers built and I have finished Bare Bones.
Next I need to read up on process organization, interrupts, and memory management.
I know I shouldn't be worrying about something so silly, but I'm struggling to come up with a name.
Oh well, I'm sure that will come later.


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sun Oct 25, 2015 1:05 pm 
Offline
Member
Member
User avatar

Joined: Wed Aug 05, 2015 5:33 pm
Posts: 159
Location: Drenthe, Netherlands
d3crypt wrote:
I know I shouldn't be worrying about something so silly, but I'm struggling to come up with a name.
Oh well, I'm sure that will come later.


Just use whatever pops into your mind as a codename to use for version control and such. You can rename it whenever and how many times you like. Or you end up liking the codename so must you stick with it. No worries.

_________________
"Always code as if the guy who ends up maintaining it will be a violent psychopath who knows where you live." - John F. Woods

Failed project: GoOS - https://github.com/nutterts/GoOS


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sun Oct 25, 2015 1:19 pm 
Offline
Member
Member
User avatar

Joined: Fri Jan 16, 2009 8:34 pm
Posts: 284
Location: Louisiana, USA
Welcome to OSDev.
d3crypt wrote:
I know I shouldn't be worrying about something so silly, but I'm struggling to come up with a name.
Oh well, I'm sure that will come later.
Well for starters most of us used MyOS as the first name. :wink: (not much of a name, but if you say MyOS anywhere here we know it is "your" os...)

Honestly what's in a name? I just recently dropped the name MyOS for BOS, and I'll probably change it again when it is more "functional" to something that (may or may not) better suit it...

Anyways, I wish you the best of luck (and patience) in all your OSDev endeavors.
Hope you have a notebook or ten :) (the paper type of notebook)

_________________
BOS Source Thanks to GitHub
BOS Expanded Commentary
Both under active development!
Sortie wrote:
  • Don't play the role of an operating systems developer, be one.
  • Be truly afraid of undefined [behavior].
  • Your operating system should be itself, not fight what it is.


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sun Oct 25, 2015 3:34 pm 
Offline

Joined: Fri Oct 23, 2015 3:36 pm
Posts: 12
BASICFreak wrote:
Welcome to OSDev.
d3crypt wrote:
I know I shouldn't be worrying about something so silly, but I'm struggling to come up with a name.
Oh well, I'm sure that will come later.
Well for starters most of us used MyOS as the first name. :wink: (not much of a name, but if you say MyOS anywhere here we know it is "your" os...)

Honestly what's in a name? I just recently dropped the name MyOS for BOS, and I'll probably change it again when it is more "functional" to something that (may or may not) better suit it...

Anyways, I wish you the best of luck (and patience) in all your OSDev endeavors.
Hope you have a notebook or ten :) (the paper type of notebook)


How does FreeMicronix sound? Cheesy, yes,
but as you said, I can change it later.
And I think I will have to go get a notebook or few today then :)
I decided to use the Artistic License 2.0 with a few minor changes.


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sun Oct 25, 2015 8:16 pm 
Offline
Member
Member
User avatar

Joined: Fri Oct 21, 2011 9:47 pm
Posts: 286
Location: Tustin, CA USA
Welcome!

Schol-R-LEA wrote:
Also, don't even consider working on a project this size without version control [...]


I couldn't agree more. I thought I would get slick and only put the things I thought were ready for public viewing on GitHub and keep my own repository on a Subversion server on my VM Server. Then, I suffered a 2-disk failure on my SAN. Very very bad news. I had some of what I was working on stored on single disks here and there and I was able to cobble together a good part of what I lost -- but not all. Now, everything I do is saved to GitHub.

It was a hell of a lesson.

_________________
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


Top
 Profile  
 
 Post subject: Re: I'm new
PostPosted: Sun Oct 25, 2015 10:24 pm 
Offline

Joined: Fri Oct 23, 2015 3:36 pm
Posts: 12
eryjus wrote:
Welcome!

Schol-R-LEA wrote:
Also, don't even consider working on a project this size without version control [...]


I couldn't agree more. I thought I would get slick and only put the things I thought were ready for public viewing on GitHub and keep my own repository on a Subversion server on my VM Server. Then, I suffered a 2-disk failure on my SAN. Very very bad news. I had some of what I was working on stored on single disks here and there and I was able to cobble together a good part of what I lost -- but not all. Now, everything I do is saved to GitHub.

It was a hell of a lesson.

Good thing its up on Github already :)


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group