Jump to content
xisto Community
onkarnath2001

Linux making an os(linux)

Recommended Posts

Do you mean you want to create an operating system based on Linux (a distribution) like Ubuntu or Fedora? Or do you mean you want to write your own operating system from the ground up, all the code yours?

If you want to make a Linux distribution, take a look at Linux from Scratch. It's a free book that teaches you all you need to know about creating your own Linux distribution from scratch, starting with the kernel. This means you don't have to deal with creating a bootloader, writing a kernel and all that - you can use premade ones, and thousands of prewritten software packages, to build a Linux distribution. Whether you can call it your own operating system is another matter; all you're doing is picking and choosing the parts you want.

If you're going to write an operating system from the very basics upwards, including a boot loader, kernel, GUI, etc. then you're in for a long ride. You'll need a good working knowledge of C or C++, and also of Assembler. There is some useful information here that you could take a look at, especially the recommended reading at the end. You'll also probably want to get a copy of the AMD Developer Manuals and Intel Developer manuals, depending on what architectures you intend to support with your OS.

Share this post


Link to post
Share on other sites

@onkarnath2001

Hi!

I'd like to clarify to you that operating systems are built to target a hardware platform. For example, you can say you are trying to build an operating system for the 32-bit Intel system architecture. Linux is an open-source operating system so you can view the source code and can perhaps even use parts of Linux for your own operating system. I'm not sure if you want to create application software for Linux, because you mention that you would like to create something for Linux - if that is what you mean, you can compile any of your existing C/C++ programs using the gcc or g++ compiler and expect most of them to run on Linux. You can also build applications using Java that can run on both Windows and Linux - in fact, you can take any Java executable along with its dependent libraries and expect them to run on either Windows or Linux as long as a compatible version of the Java Virtual Machine, which is also referred to as the Java Runtime Environment, has been installed.

If you do indeed want to create your own operating system, you would be spending a lot of time re-creating a lot of the code that exists out there. What I mean is that you can read some of the code that BSD, Linux and Minix provide to look up how to create an operating system and what kind of source code you will be writing. You can download the Linux kernel source code from https://www.kernel.org/ and look up the associated documentation at http://lxr.linux.no/ . Most of the code is neatly divided into modules so you can start reading through the code for a specific module. Documenting the Linux kernel is a project by itself so at some point you might just want to do that after reading pages and pages of code that the Linux kernel comprises.

It is hard to create a full-featured operating system all by yourself as a final year project. Creating an operating system like Linux or Windows takes a long time to build. You might want to create something that you can demo to the project evaluation team.

The first component that you would be dealing with when creating an operating system is a boot loader. You would probably want to use assembly language to create it due to the relative ease and then continue writing the rest of the operating system in C/C++.

If you do need more resources, feel free to post back to this post and perhaps we can get you more resources or guide you via IM on how to get started with OS development.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.