The Colin Walls Blog

This blog is a discussion of embedded software matters - news, comment, technical issues and ideas, along with other passing thoughts about anything that happens to be on my mind.

15 December, 2016

As this is my last “off-topic” posting of 2016 [there will be a techie one next week], I wanted to end the year on a high – of sorts. As I get older, I am increasingly affected – moved, really – by acts of kindness. I am most emotional when the kindness is directed to a stranger and the kind-hearted person has absolutely zero expectation of anything in return. This is a topic that I have discussed before. I am casting my mind back 10 years … Read the rest of this entry »

12 December, 2016

My latest article on has been published. This piece is the third installment of the RTOS Revealed series, which will continue to appear through 2017 and beyond. The series will cover every aspect of real time operating systems.


Tasks and scheduling

In this article, I take a look at tasks, threads and processes and outline their differences. The various types of task scheduling are discussed and some thought is given to the different states that may pertain to a task at a given moment.

You can gain access to the whole series by following this link.

I hope that you find the series interesting and look forward to your input by comment or email or via social media.

, , , , ,

8 December, 2016

I am generally of the opinion that marriage is a Good Thing, as it is a clear step towards the construction of a strong family unit, which is good for society as a whole. My view is shared by most mainline religions and is espoused by most governments, some of which provide fiscal incentives. [In the UK, there is a small benefit for low income couples, but richer people are likely to be fiscally penalized for being married – go figure.] It has been a while since I last considered matters of marriage and weddings for myself – I wrote about it at the time. But I have been contemplating the matter, as some family weddings are scheduled for 2017 … Read the rest of this entry »

1 December, 2016

I have always found the American Thanksgiving holiday rather annoying. I can never remember when it is and nobody gives me any warning. Then, all of a sudden, the world stops for about a week. Having said that, I am totally in favor of having a holiday in the middle of Fall [we have nothing between the end of August and Christmas]. I also admire much of the sentiment around Thanksgiving, as I perceive it. The focus on getting family together and lack of obsession with giving gifts is excellent. Last week, another aspect caught my attention … Read the rest of this entry »

28 November, 2016

ESCNext week, the California ESC event takes place and it is back in San Jose this year. I was planning to be there, as I had a paper accepted. Sadly, I needed to cancel my trip and a colleague will present on my behalf. Here are the details of the paper:

Dynamic Memory Allocation & Fragmentation in C & C++

In C and C++, it can be very convenient to allocate and de-allocate blocks of memory as and when needed. This is certainly standard practice in both languages and almost unavoidable in C++. However, the handling of such dynamic memory can be problematic and inefficient. For desktop applications, where memory is freely available, these difficulties can be ignored. For embedded – generally real time – applications, ignoring the issues is not an option.
Dynamic memory allocation tends to be non-deterministic; the time taken to allocate memory may not be predictable and the memory pool may become fragmented, resulting in unexpected allocation failures. In this session the problems will be outlined in detail and an approach to deterministic dynamic memory allocation detailed.

I am sad to be missing the show, but I hope it goes well. If you would like a copy of my presentation, please contact me via email or social media.

, , ,

24 November, 2016

It is my broad philosophy in life to be intolerant of prejudice and bigotry. I endeavor to see everyone as an individual and try not to make any assumptions based on the person’s color, gender, sexual orientation, nationality, religion, social status, body shape, intelligence or financial position. I will not claim to be 100% successful with this goal, but I do try very hard. I am very sympathetic to anyone who experiences abuse as a result of others’ prejudices. However, as I am white, male, heterosexual, British, agnostic, middle class, not fat, fairly smart and solvent, I have almost no experience of being on the receiving end of prejudice. This means that I have difficulty empathizing with a victim of prejudice. But that seems to be changing … Read the rest of this entry »


21 November, 2016

banner_referent_2016The embedded conference season continues and, next week, I will be in Sindelfingen, near Stuttgart in Germany for the ESE Kongress. This is an annual event that I have attended several times over the last few years. There is a small trade show – where some of my colleagues will be manning a stand throughout the week – and multiple streams of presentations … Read the rest of this entry »

, ,

14 November, 2016

Next week is the Embedded Conference Scandinavia [ECS], which takes place in Kista – a suburb of Stockholm, Sweden.

This is the foremost embedded event in the Scandinavian region and I have visited and presented there numerous times. This year I have the privilege of being invited to present 4 papers … Read the rest of this entry »

, , , , , , , , ,

10 November, 2016

Like most people, I have a car. I do not mind driving and try to do so in a legal, responsible and courteous manner. I do not particularly enjoy driving, but it gets me from A to B. Some people do get pleasure from driving and I have no problem with that, so long as they do not treat it as a competitive sport. The bit of driving and car ownership that I definitely dislike is parking the darned thing … Read the rest of this entry »

7 November, 2016

My latest article on has been published. This piece is the second installment of a new series, called RTOS Revealed, which will appear from time to time for the rest of this year, into 2017 and beyond. The series will cover every aspect of real time operating systems.

Program structure and real time

In this article I take a look at ways to structure an embedded application and what real time is all about. This leads to the decision making process for utilizing an RTOS or not.

I hope that you find the series interesting and look forward to your input by comment or email or via social media.

, , , , ,

3 November, 2016

Continuing my occasional “Six of the best” series, I want to turn my attention to books – specifically works of fiction. I enjoy reading and always have at least one book on the go. Mostly I would rather read than watch TV. I mostly use my Kindle, which is very convenient. It works well for reading while eating – if I am eating alone. And it is great when traveling.

I read many kinds of books, but do enjoy contemporary fiction. So I have chosen what are probably my favorite six fiction books that I have read in the last few years … Read the rest of this entry »

31 October, 2016

First off, I lay no claim to be an Internet security expert. Maybe because of this, I was quite shocked by the scale and effect of the major DDoS attack that hit the news recently. This attack restricted access to some major websites for Internet users on both sides of the Atlantic. The really interesting aspect of this incident is that the attack was implemented by hijacking large numbers IoT devices … Read the rest of this entry »

, , , , , , ,

27 October, 2016

I always try to do The Right Thing. I endeavor to be honest and to be considerate and to generally consider the needs and feelings of others. Although I do not subscribe to any recognized religion, I believe that my personal “code” aligns well with most mainstream faiths. I do my best, but I fail all the time; of course I do – I am human. But I feel that it is trying that counts.

I do sometimes question whether trying to be helpful is always the best practice … Read the rest of this entry »

24 October, 2016

ESD-20-years-ARM-TechCon.jpgWorking at Mentor Graphics, as a specialist in embedded software, has always been interesting, but I am often surprised when I meet people at conferences etc. who have no awareness of the company’s involvement in this technology. This ignorance is surprising for two reasons. Firstly, almost all modern electronic systems are embedded systems; hardwired logic is still developed, of course, but that is a minority activity. The second reason for my surprise is that this year Mentor is celebrating 20 years of offering embedded software products and solutions … Read the rest of this entry »

, , , ,

20 October, 2016

We live in a world of constant change, so it seems. We are no longer satisfied with owning something or receiving a service – we are all told that we need to have the latest and best versions. We need to upgrade. There is much evidence that many people succumb to these demands – look at the lines outside of Apple stores when a new iPhone or iPad is released. I feel that there are lots of reasons to resist or, at least, carefully consider, these apparently inevitable upgrades … Read the rest of this entry »

, , , ,

17 October, 2016

What are you priorities when writing code? Obviously you need to implement some specific functionality and there may be a required level of performance. This is all testable or measurable. However, there are two other key goals, that are harder rate:

  1. Write code that is clear and easy to understand. I shy away from using the term “self-documenting”, but that is certainly what you should be aiming for.
  2. Make sure that the code is maintainable and extendible. It might be you that has to do future work and a little care now will make your life easier down the line.

It is #2 that I would like to focus on today … Read the rest of this entry »

, , , , ,

13 October, 2016

As it is a software tool [or a service, depending on how you look at it], that I use many times every day, it is surprisingly long since I last wrote about Evernote. Overall, the benefit that I gain from using Evernote is a very flexible operating environment. I can work on my desktop computer [iMac] in my home office. Then, without really making any preparations, I can grab the MacBook and continue my work elsewhere. To a significant extent I can do this with my iPad and my iPhone as well. At a stretch, I could even work at any Internet-connected computer using a browser to access Evernote.

There is almost no limit to the number of applications I find for Evernote, but I would like to highlight a few … Read the rest of this entry »


10 October, 2016

My latest video blog is now available. I am talking about blocking and non-blocking APIs in real time operating systems. You can see the video here or here:

Of course, the example that I use in the video is Nucleus RTOS from Mentor Embedded..

Future video blogs will continue to look at topics of interest to embedded software developers. Suggestions for topics are always welcome via comment, email or social networking.

, , , , , ,

6 October, 2016

As I frequently mention here and elsewhere, one of my big interests away from work is photography. I have been taking pictures all my adult life – over 40 years. My enthusiasm waxes and wanes, of course, but overall I take [have taken] a lot of pictures. My Lightroom catalog contains about 21,000 pictures, which span about 15 years. I delete a lot of pictures, that are not up to scratch, as digital clutter can be as annoying as the physical kind. So, I guess I must have shot something over 50,000 images over that time.

Someone recently asked me an interesting question: What do you do with all those pictures? I needed to ponder before I could answer that question … Read the rest of this entry »

3 October, 2016

My latest article on has been published. This piece is the start of a new series, called RTOS Revealed, which will appear from time to time for the rest of this year, into 2017 and beyond. The series will cover every aspect of real time operating systems. Here is some detail:

I hope that you find the series interesting and look forward to your input by comment or email or via social media.

, , , ,

29 September, 2016

I guess that everyone has felt anxiety, to some extent, at some point in their lives. For some people, the feelings dominate their lives, which I find quite a distressing thought. However, can anxiety have a positive side? Why did we evolve these feelings if they do not have a use of some kind? … Read the rest of this entry »

26 September, 2016

Next week, I will be hosting a Web seminar, looking in detail at the key factors involved in selecting an operating system. I frequently hear from engineers, who are endeavoring to make such a choice, and find themselves rather overwhelmed by the options. My hope is that I can help you to focus on the critical issues and ignore the sales hype … Read the rest of this entry »

, , , ,

22 September, 2016

Most of my male friends – and quite a few females – are interested in cars. They tend to be very keen to see the latest models and, to some extent at least, make judgements about people based on the car that they drive. To me, however, they are tin boxes that take me conveniently [sometimes] from A to B. However, I am interested in technology and cars are certainly a focus of much high-tech development … Read the rest of this entry »

@colin_walls tweets

Follow colin_walls