Thursday, August 23, 2012

Android Booting Scenarios

Recently, I was trying to dig more into the Android kernel all over the net.

My concern was to understand the booting scenarios of this kernel.

I tried to make the task either by collecting them into the slides below.

These slides are a part of course I am currently preparing about the Android Internals.

Waiting for your comments.

Monday, February 27, 2012

Thursday, August 11, 2011

uCOS-III Source Code and Books are Now Available for Free

In a great move for all embedded lovers, Jean J. Labrosse has announced a day ago that uCOS-III source code is now available for as well as its 6 books in PDF format.

Furthermore, colleges and universities can use it for free.

You can check Jean J. Labrosse announcing it here.

The source code can be downloaded from here.

The books are available from here.

The big question is "Why after a 2 years of release its source code is made available?"

If you have an answer, please share.

Monday, June 13, 2011

SECC: Embedded SW Training July 2011

 SECC is organizing the following courses  in the:
From 3 to 21 July 2011

Schedule , Fees &  Instructors:

Please fill in & submit your registration form at:
      before end of  Sunday June 19, 2011

Outline  :
Kindly find attached the courses outline

About Training :
§  Training day starts from 9:00 AM to 4:00 PM
§  The courses will be held at the Smart Village – Building B121 - Km 28 Cairo-Alex  desert Road.

About fees:
     After you receive SECC confirmation email:
  • The fees will be paid at:  Smart Village -  SECC premises -  B121 – ITIDA Building
  • Attention  Mr. Ahmed Anany – room 1017,   tel.: 35345250,  mobile:0101709913

Cancellation Policy
·               Only 5 working days before the beginning of the course, the applicant can be totally refunded.
·               Other than that there is no refund

For any further information please don't hesitate to contact us
Ø  Mr. Mohammed Bhady   : 35345226
Ø  Mr. Mahmoud Mansour : 35345122

An Interview with Richard Barry

Fig1: FreeRTOS Logo
Few days ago, we were honored by a visit of Richard Barry to our blog. We asked him to have an interview for our blog. He agreed. The interview focused on various aspects. I tried to get the best out of it for all embedders and FreeRTOS fans.

About Richard Barry
Richard Barry is the founder of FreeRTOS organization, director of Real Time Engineers 
Ltd., and head of innovation in WITTENSTEIN. Richard Barry graduated with 1st Class Honors
in Computing for Real Time Systems. He's been directly involved in the start up of several 
companies, primarily working in the industrial automation and aerospace and simulation 
Fig 2: Richard Barry in  his lab
FreeRTOS Story
Q: FreeRTOS, how did the idea start? How did the idea of the company start?
FreeRTOS originated from a consulting project I did a long time ago.  I was asked to research RTOS solutions, with the aim of recommending a replacement for an RTOS that was used in an existing product. It had been decided that the existing RTOS should be changed because of the royalty based licensing model it used.

During the research, I concluded that the application only required a simple, small, solution, and the existing commercial solutions did not represent good value.  So, I then looked at open source solutions as an alternative, but found these cumbersome to configure, build, and understand - especially on a Windows (as opposed to Linux) host.  My customer and I were both Windows-centric.

I ended up recommending one of the commercial options as ‘best fit’ rather than a ‘perfect fit’ solution.  The project showed me there was a gap in the market – if, indeed, you can call giving software away for free a market.  I thought there must be a lot of engineers going through the same process I had gone through, and coming to the same conclusion, and that these engineers would benefit from a Windows friendly, robust, easy to use, documented, supported, open source solution.  I therefore created FreeRTOS with the intention of it being just that, and also, I must admit, because I'm a geek at heart and it was fun.

I had no intention of taking it further than writing it, and publishing it on the web.  When I set it wild on the internet though, it seemed I had been right - there was demand for it - and some eight years later this has been proven by the results of the latest EETimes Embedded Market Survey.

Yes, I saw a gap in the market, and successfully filled it, but there was also some luck, as around that time the low cost microcontroller market was evolving such that the time was just right for FreeRTOS.

FreeRTOS is extremely liberally licensed, you can use it in commercial applications without risking your own propitiatory IP (provided that IP is outside of the kernel itself).  All the same, I was often asked for commercial licenses, training and commercial support contracts.  I partnered with WITTENSTEIN high integrity systems to meet the commercial and legal need which I could not address myself.  High Integrity Systems are a safety company, and used their knowledge, skill set, and investment to get SafeRTOS certified.  SafeRTOS was originally derived from FreeRTOS, so it was a mutually beneficial arrangement.

WITTENSTEIN also add options for FreeRTOS users by providing the code fully integrated with other embedded software components such as TCP/IP stacks, file systems, USB stacks, etc.  This is done under the OpenRTOS brand. FreeRTOS also provides integrated solutions, with free components.

FreeRTOS is intended to provide a resource for engineers, and the business model requires very modest commercial support, in part due to the high level of participation by the engineering community. It is not our goal to become, or indeed would it be possible to become, the next Wind River or Green Hills.

FreeRTOS Markets
Q: What industries do you see that FreeRTOS and its related products can play a role in as a backbone software solution platform?

It would be easier to list which industries it is not used in.  FreeRTOS has had 150,000 downloads in the last two years.  It is found everywhere.  Even I am surprised about some of the places it turns up.

FreeRTOS Business Model
Q: Why the business model followed for FreeRTOS was not followed for the related products?

FreeRTOS does not, yet, provide related products, unless you include the
kernel aware debugger plug-ins, but they are also provided for free download. I provide integration with other open source components though, but again, they too are available for free download.

FreeRTOS Role in facing the Embedded Designers Challenges
Q: What are the challenges embedded developers face and how is FreeRTOS and its related products are aiding their customers to face them?

There are lots of well documented ‘typical’ challenges faced by embedded
engineers.  For example, reducing time to market.  FreeRTOS addresses that particular challenge by providing “out of the box” examples for each of the 50 or so officially supported FreeRTOS ports.  Another typically quoted challenge is cost reduction – well there the instant free download provided by FreeRTOS is an obvious benefit – you don’t even have to part with any personal information to get the code, just take it.

However, I think one of the primary challenges that FreeRTOS aids in addressing, is how to migrate a software design pattern from one that is appropriate for low cost, low resource, 8/16-bit microcontrollers, to a design pattern that is appropriate for one of the new generation of low cost, 32-bit architectures.  The low cost 32-bit architectures come with a lot more RAM, Flash, and a greater number of peripherals.  That in turn, inevitably, leads to larger, more complex, and more feature rich software requirements.  FreeRTOS, along with the FreeRTOS tutorial books, provides an easy solution for engineers that are not familiar with the software challenges this poses.  In fact, I would go as far as to say, FreeRTOS provides an easy solution even for engineers that are familiar with these challenges.

FreeRTOS Coping with Future Trends in Embedded Market
Q: What are the trends you forsee in embedded systems and coping with?

Again there are a lot of well documented trends.  Machine to machine communications, smart metering, hand held devices, near field communications, to name just a few.  The trend I am most interested in,
though, and the one that is relevant to all the above and more, is the trend towards lower costs in 32-bit processing solutions, and lower costs in tools for 32-bit microcontrollers.

FreeRTOS vs Others
Q: What specializes your products compared to others?

That is a difficult question.  From a technical perspective, what is to differentiate one kernel solution from another – don’t they all do the same thing?  Each will do better than others for some criteria, while simultaneously doing worse than others for other criteria.  You have to choose the best for your particular application.

If I was to try and answer that question, I would probably have to talk about non technical attributes.  For example:  

  • Code quality, which can be quantified in a number of ways. I know of
    several people who have done independent analysis of the code, in various ways, and have satisfied themselves of its robustness and quality.

  •  FreeRTOS is a truly cross platform defacto standard.  It will not lock
    you into any architecture, or any toolchain.  It supports 27 architectures (that is, architectures, not devices) and 17 tool chains.  Take your pick, mix and match, and don’t lose the time invested when you move onto your next project.  Not only that, but whatever you do, it need not cost you anything.  Even the time investment required can be lower than with commercial solutions.

  • The FreeRTOS open source model is (somewhat) innovative in a way that
    is beneficial to users.  For example, FreeRTOS is “moderated open source”.  This means that, when you download FreeRTOS, the code is truly free and open source to you.  However, contributions back to FreeRTOS are made publicly available while simultaneous kept separate from the ‘official’ code.  This allows the FreeRTOS project to strictly control the quality of the code, ensuring a robust product.  It also provides assurance to end users that their open source choice has no
    unintentional or unknown IP contamination.

  • The business model allows users the freedom to access, use, evaluate,
    distribute, etc. the code, completely free of charge.  However, they have the security of knowing there is a third party infrastructure there
    should they ever need commercial licensing or support contracts.

  •   FreeRTOS is professional grade and robust, yet still free.  Users can have the confidence in knowing that SafeRTOS, which originated from FreeRTOS, has been independently certified by TUV SUD for use in safety
    critical systems.

  •  I am told, and have not attempted to quantify, that the support provided with FreeRTOS is better and faster than that provided with many commercial products.

  •  FreeRTOS has a *massive* user base.

Final Word
Q: Any final word to embedded developers all over the globe?

I would recommend finally putting the old and repetitive “buy or build yourself” RTOS question away.  There is a free, documented, widely ported, and supported option just a few mouse clicks away, so why would you do either?

Monday, May 9, 2011

Introduction to C Programming Course

  • Introduction to C
  • Variables and Datatypes
  • Blocks and Compound Statements
  • Control Flow
  • Modular Programming
  • Variable Scope
  • I/O
  • Pointers and Memory Addresses
  • Arrays and Pointers Arithmetic
  • Search and Sorting Algorithms
  • User Defined Datatypes
  • Data Structures
  • Callbacks
  • Hash Tables
  • Using External Libraries
  • Creating Libraries
  • Standard Libraries

Saturday, April 30, 2011

Introduction to Embedded Systems

  • Introduction
  • Embedded Hardware
  • Embedded Software
  • Embedded Development Tools