UBC Home Page -
UBC Home Page -
UBC Home Page UBC Home Page -
-
-
News Events Directories Search UBC myUBC Login
-
- -


Design of a 32-bit Multi-Tasking Operating System

(With Real Time Keyboard Interrupt Acknowledgement)

Principal Developers:

Anirban Sinha & Satyajit Chakrabarti

Computer Engineering Department, Institute of Engineering & Management, Kolkata-700091. INDIA.

 

PREFACE:

As a part of the B.Tech curriculum, we are supposed to complete a full fledged industry/research level project in our 4th and final year of study. We, a group of friends, decided to try our hands on developing a basic operating system which could interact with the user and take in some basic commands and perform some small functions. The idea was noble, but we knew not how many hurdles lay in our way to accomplish the actual target. We had to spend hours searching the Internet, reading Intel reference guides, reading manuals of peripheral devices and to some extent learning basic programming in assembly, ANSI C and using DJGPP to compile our codes. 

However, at the end of the day, what we achieved was quite remarkable. We indeed had our own OS kernel code.

Kindly note that this project is no longer maintained by the original developers.

However, you may get in touch with other OS writers interested in this project through sourceforge. The sourceforge webpage for AVOS is:

http://sourceforge.net/projects/advancedos/

 

SCENARIO:  

To design a 32 bit single user multi-tasking Operating System with its own Interrupt Service routines and interrupt handlers operating in protected mode. The kernel is loaded in the extended memory, enabling its own set of interrupts. A basic command interpreter is developed that takes in some simple user commands and throws the responsibility of its execution to the kernel. The kernel then executes the user commands. A set of Virtual Consoles is at the disposal of the user. The user can execute several commands at the same time by switching to other virtual consoles.  

 

SOFTWARE RESOURCES:  

The software resources used to compile the kernel include DJGPP: GNU C compiler for windows, NASM: Netwide Assembler, CM32 Compiler, decompilers etc.

 

HARDWARE RESOURCES:

A 32 bit 80386 or above Intel based x86 Microprocessor, standard keyboard, display device, standard floppy drive controller (optional).  

 

An Important Note:

We have used GRUB as our bootloader for the AVOS kernel. This gives us the flexibility to use any existing file system according to our convenience. At the same time, it frees us from putting the kernel at some exact physical location in the floppy.

 

DOWNLOAD:

Current version of AVOS is 1.2.0.

You can Download AVOS related materials freely under GNU General Public License:

  • Kernel Source Codes
    The source codes can be compiled either using DJGPP in DOS or using GNU 'make' in Unix/Linux. 

  • AVOS Boot Disk for AVOS version 1.2.0 
    Just insert a blank floppy in your drive and double click the EXE file to create the boot disk for AVOS. The downloadable file is an EXECUTABLE '.EXE' file under WINDOWS and DOS operating systems ONLY.

    If you are looking for an UNIX/LINUX boot disk creation utility,  CLICK HERE to download the gzip file, unzip and run the installation script "install.sh" from bourne command shell. 

 

LEGAL DISCLAIMER

We provide absolutely NO warranty, to the extent permitted by applicable state law. Except when otherwise stated in writing, AVOS is provided “AS IS” without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of AVOS is with you. Should AVOS prove defective, you assume the cost of all necessary servicing, repair or correction.

In no event, unless required by applicable law, will the developers be liable to you for damages, including lost profits, lost monies, or other special, incidental or consequential damages arising from the use or inability to use AVOS (including but not limited to loss of data or data rendered inaccurate, or losses sustained by third parties or a failure of the program to operate with any other programs), even if you have been advised of the possibility of such damages, or for any claim by any other party.  

 


© Copyright Anirban Sinha 2006, All Rights Reserved.

AVOS, its source codes, binaries and the documentations are copyrighted to the developers of this software. The developers are its sole distributors. Any violation of GNU GPL should be reported at once to:

anirbans@cs.ubc.ca or satyajit@cs.ubc.ca


Page last modified:Monday May 16, 2016