Open side-bar Menu
 Embedded Software

Archive for the ‘Uncategorized’ Category

Real time operating systems: black box or open source?

Tuesday, June 16th, 2020

Most of the software that most of us use most of the time is obtained as a binary executable. The program may be run and does what it does, but the user has no knowledge of its inner workings and no opportunity to modify its functionality. And all of this is fine. For example, I am writing this posting on my PC using a Windows program. Later, I will probably review it on my iPad using the corresponding app. The two programs are probably written in different languages by different teams. Do I care? Nope. The important thing to me is the data [my text] and what the software does with it.

In the world of embedded software, things are a bit different … (more…)

Multiple constructors in C++

Monday, May 18th, 2020

C++ is effectively a superset of C. As a result, many developers who are learning the language start from the basis of knowing C. This leads to various aspects of the language being rather surprising. One example results in a common question: What is the idea behind the provision of multiple constructors for a class? … (more…)

A hypervisor on a multicore system

Thursday, April 16th, 2020

Multicore systems may be configured in a number of different ways. An approach that is useful for many embedded applications is Asymmetrical MultiProcessing [AMP], where each CPU runs its own operating system or may no OS at all. A particular facet of interest is the incorporation of a hypervisor in an AMP system … (more…)

Questions on multicore Linux, DO-178B and RTOS performance

Monday, March 16th, 2020

In many contexts – blog posts, seminars, webinars, via email – I am presented with questions about embedded software matters. I do my best to provide answers to the questioners. However, sometimes I think that the Q&A might have wider interest, so I might publish a few here … (more…)

Multicore systems: heterogenous architectures – untangling the technology and terminology

Monday, February 17th, 2020

Multicore continues to be a hot topic, as an ever-increasing number of embedded systems are designed with multiple CPUs – most commonly multiple cores on a chip. One of the challenges with understanding multicore is that the term actually covers a number of architectures and approaches to design.

Figuring out the terminology is the first challenge … (more…)

struct vs class in C++

Wednesday, January 15th, 2020

A common question about C++: how does a struct differ from a class in C++? …

I will start by defining a struct in C. I would see it as a customized, composite data type, which may be constructed from the existing built-in data types [int, char, etc.], bit fields [integers of specified bit size] and other structures… (more…)

Problems with pointers: out of scope, out of mind

Monday, December 16th, 2019

There is sometimes a little confusion about the difference between the scope of a variable/object and its actual existence. For “existence”, read “validity” because the memory occupied by a variable never goes away; the time at which the memory is actually allocated to the variable varies … (more…)

Exception handling in C++

Monday, November 18th, 2019

Various aspects of the C++ language concern embedded software engineers, and a particular one is exception handling … (more…)

Dynamic memory in real time systems – a solution?

Wednesday, October 16th, 2019

In C code, variables can be declared in a couple of ways. They might be static, so they are allocated a specific address in memory; this is the case for variables defined outside of functions or inside a function and qualified with the keyword static. Alternatively, a variable might be automatic, which means that it is allocated space on the stack or in a register for the duration of its scope [or, more precisely, its lifetime]. Another possibility is to dynamically allocate memory using the standard library functions … (more…)

Selecting a CPU

Monday, September 16th, 2019

You might question why, in a blog that is supposed to be about embedded software, I am considering the selection of an embedded CPU, which is clearly a hardware matter. It would be a fair question, except that, in embedded system design, the development of hardware and software are inextricably entwined, each having an influence on the other.

So, how do software considerations affect the selection of a CPU? … (more…)




© 2024 Internet Business Systems, Inc.
670 Aberdeen Way, Milpitas, CA 95035
+1 (408) 882-6554 — Contact Us, or visit our other sites:
TechJobsCafe - Technical Jobs and Resumes EDACafe - Electronic Design Automation GISCafe - Geographical Information Services  MCADCafe - Mechanical Design and Engineering ShareCG - Share Computer Graphic (CG) Animation, 3D Art and 3D Models
  Privacy PolicyAdvertise