It is impressive when you can boot within a second, even in an embedded environment. MontaVista is marketing the right feature in this video.
Obviously this is difficult to achieve on different architectures with storage devices and need to load drivers.
Experiences, Adventures, Appreciations, Notes, Tips, Tricks and References on using Ubuntu (sometimes Linux in general).
Wednesday, July 15, 2009
Sunday, July 5, 2009
openproj
I recently tried out OpenProj and it worked well for some minimal stuff. It seems to be feature rich and useful to open MSProject files as well.
Check it out at http://openproj.org/ or on sourceforge.
OpenProj by Serena Software is a desktop replacement of Microsoft Project. OpenProj has equivalent functionality, a familiar user interface and even opens existing MSProject files. OpenProj is interoperable with Project, with a Gantt Chart and PERT chart.
Check it out at http://openproj.org/ or on sourceforge.
OpenProj by Serena Software is a desktop replacement of Microsoft Project. OpenProj has equivalent functionality, a familiar user interface and even opens existing MSProject files. OpenProj is interoperable with Project, with a Gantt Chart and PERT chart.
Saturday, July 4, 2009
wchar and unicode
Instead of using the standard ASCII characters, there is sometimes a need to support an alphabet that has more than 256 (2^8) characters. That is where you use Unicode where every character is 16 bits, thus giving you 65536 (2^16) characters.
In C for example, a wchar would be a Unicode character. The regular C string functions won't work on Unicode strings, so instead you use the C runtime library functions available for Unicode strings, prefixed with wcs.
Example: wcslen, wcscpy and such.
Of course the C compiler and the runtime library must have support for Unicode if you plan to use it.
You tell the C compiler that you plan to use Unicode through a macro:
_UNICODE // Tell C we're using Unicode, notice the _
#include // Include Unicode support functions
Then define a Unicode string:
wchar_t string[] = L"Ubuntu rocks";
The L macro tell the compiler that this is a Unicode literal and not a char (unsigned short) variable.
Here is the wchar.h header file.
In C for example, a wchar would be a Unicode character. The regular C string functions won't work on Unicode strings, so instead you use the C runtime library functions available for Unicode strings, prefixed with wcs.
Example: wcslen, wcscpy and such.
Of course the C compiler and the runtime library must have support for Unicode if you plan to use it.
You tell the C compiler that you plan to use Unicode through a macro:
_UNICODE // Tell C we're using Unicode, notice the _
#include
Then define a Unicode string:
wchar_t string[] = L"Ubuntu rocks";
Here is the wchar.h header file.
Wednesday, June 10, 2009
now reading

It's surprising how much fun it is getting free stuff!
I received my free copy of "Best Kept Secrets of Peer Code Reivew" and it has been fun reading so far. I would recommend getting yourself a free copy.
On a related note, I was recently discussing the topic of how computer science and specifically programming courses are taught in schools/colleges/universities. Too little emphasis is placed on reading code and more is placed on writing code. I think realistically it should be the other way around. In the years of software engineering I have been doing, I have probably spent more time reading or understanding or reusing or modifying or removing code than writing. And that is a skill I had to unfortunately pick up once I started working.
Tuesday, June 9, 2009
useful link for crossplatform c++ development
Found this link in one of the replies on a StackOverflow question.
http://predef.sourceforge.net/index.php
It has a lot of useful information and links if you need write code to run on multiple platforms.
http://predef.sourceforge.net/index.php
It has a lot of useful information and links if you need write code to run on multiple platforms.
Monday, June 8, 2009
mcelog
At work, I have to decode kernel panics on 64-bit systems occasionally.
`mcelog´ it seems could be a useful tool.
MCE 0
HARDWARE ERROR. This is *NOT* a software problem!
Please contact your hardware vendor
CPU 2 BANK 3 TSC c82ff2586f6b0
ADDR 219540
STATUS 942000470001010a MCGSTATUS 0
`mcelog´ it seems could be a useful tool.
mcelog decodes machine check events (hardware errors) on x86-64 machines running a 64-bit Linux kernel. It should be run regularly as a cron job on any x86-64 Linux system (if it is not in the default packages on your x86-64 distribution, please complain to your distributor). It can also decode machine check panic messages from console logs.I don't have a good example on it´s usage, but on one of my systems, I noticed this in /var/log/mcelog (the cron script is setup to write to /var/log/mcelog in Fedora distributions).
MCE 0
HARDWARE ERROR. This is *NOT* a software problem!
Please contact your hardware vendor
CPU 2 BANK 3 TSC c82ff2586f6b0
ADDR 219540
STATUS 942000470001010a MCGSTATUS 0
Tuesday, June 2, 2009
ss - clear TCP and UDP socket information
Subscribe to:
Posts (Atom)