BOS Logo B.lu BOS Operating System


Home News Introduction Documentation Versions History Movies BOS board Preview


Documentation

Full BOS documentation is provided with more than 200 pdf pages available from Download Area.
Moreover source files are fully commented describing all performed operations.

Documentation arguments are :

Introduction
  • Versioning
  • How to start
  • BOS step by step
  • BOS Features
How BOS works
  • BOS structure
  • Definitions
  • Data Types
  • Error codes
  • Definitions
  • Macros
  • System Boot
  • Preemptive Multitasking
    • Brief on stack
    • Interrupt servicing
    • Simple Multitask
    • Complete Multitasking
  • Task memory management
  • Interrupt Management
  • Critical Sections
  • Events and Semaphores
    • Events
    • Semaphores
Layers
  • LIB Layer
  • HAL Layer
  • KRN Layer
  • DRV Layer
Writing a simple BOS application
  • Customizing Makefile
  • Writing source file
  • Building and downloading
Other arguments
  • Examples
  • BOS Configuration
  • Makefiles
  • Writing a BOS device driver
  • Porting and Extending BOS

How to start

To start writing BOS applications BOS source code and mpsgcc free C compiler are needed. mspgcc compiler can be downloaded for free at http://mspgcc.sourceforge.net/
First of all mspgcc must be installed, then extract BOS package in an hard disk folder and under Examples directory can be found some useful projects to start using BOS. Hello Example illustrates an "Hello World" application and TwoTasks shows how to create an application with two running tasks; these two examples are good starting points to understand how BOS works because they are simple and don't require external hardware, so can be executed on all hardware.
Optionally can be installed Dev-C++ (a free programming IDE that can be found at "http://www.bloodshed.net/") and load BOS .dev file to explore entire BOS structure tree easily.
Furthermore it is also provided BOS.sln, a Microsoft Visual C++ project that can help understanding BOS structure (both BOS.dev and BOS.sln point to the same source code, they are provided just for convenience).

If everything is working fine, compiling all examples (running \Examples\Build all examples.bat) should produce the following output :



cleaning ...
compiling ...

Building Complete
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0   21950       0   21950    55be made_out/Complete.a43

Building Console
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0   23236       0   23236    5ac4 made_out/rs232_console.a43

Building Display
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0    7214       0    7214    1c2e made_out/Display.a43

Building Hello
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0    2076       0    2076     81c made_out/Hello.a43

Building Menu
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0   22232       0   22232    56d8 made_out/lcd_menu.a43

Building Minimum
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0    1792       0    1792     700 made_out/Minimum.a43

Building RotaryEncoder
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0   20326       0   20326    4f66 made_out/rotary.a43

Building RS232
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0    7240       0    7240    1c48 made_out/RS232.a43

Building TwoTasks
Building system ...
Building drivers ...
Building application ...
   text    data     bss     dec     hex filename
      0    2180       0    2180     884 made_out/TwoTasks.a43

In case of errors refer to BOS documentation introduction chapter (BOS step by step chapter) for common problems solution. Often all errors are solved adding mspgcc bin directory to system environment PATH variable as first entry.






BOS - B.lu operating system - Luca Bertossi - blubos@gmail.com

SourceForge.net Logo hosts B.lu BOS operating system