Blogs

L'Hexapod: Micromagic systems

Previously published This article was previously published on lhexapod.com as part of my journey of discovery into robotics and embedded assembly programming. A full index of these articles can be found here. Micromagic systems do robotics and animatronics for the film and tv industry and have quite a nice selection of hexapod robots. It’s especially interesting to see the evolution of their robots here. Their latest stuff is very impressive and puts into perspective how much I have to learn…

L'Hexapod: A-pod, an ant inspired hexapod

Previously published This article was previously published on lhexapod.com as part of my journey of discovery into robotics and embedded assembly programming. A full index of these articles can be found here. This is the kind of thing that I mean when I say ‘hexapod robot’. I particularly like the head and mandibles. More details can be found here: http://forums.trossenrobotics.com/showthread.php?t=2762 and here: http://blog.trossenrobotics.com/index.php/2009/03/17/a-pod-a-robot-ants-tale/

L'Hexapod: Welcome

Previously published This article was previously published on lhexapod.com as part of my journey of discovery into robotics and embedded assembly programming. A full index of these articles can be found here. Hi, my name is Len Holgate and this is a blog about my new project to design and build a hexapod robot; a mechanical vehicle that walks on six legs… By day I design and build high performance TCP and UDP servers for the Windows platform, my C++ technical blog is here: www.

Upgrading to version 6.0

I’m in the process of upgrading a set of ISO8583 servers for a client. One of these is the original server that caused The Server Framework to come into existence back in 2002. The other two servers are based on a 2005 cut of the code; one written in 2005 and one, heavily based on the other, written in 2008. The upgrade is primarily to support windows performance counters on Windows Server 2008 and to allow for x64 builds.

Excellent article on Non-Paged Pool

Mark Russinovich has an excellent piece (here) on how ’non-paged pool’ memory sizes are calculated for various versions of Windows operating systems. As those of you who are dealing with high performance, high connection, server systems know, non-paged pool is one of those annoying system wide limits that can sometimes get in the way of servicing a large number of clients as every active I/O operation consumes some non-paged pool. The good news is that on Vista x64 systems and later the way that non-paged pool limits are calculated has changed and the limits are much higher.

Highlights of the 6.0 server framework release

The latest, 6.0, release of The Server Framework is significant for me in several ways. From a purely practical point of view it’s the first release from my new Subversion repository and as such it’s the culmination of a fair amount of work and restructuring. The new repository is easier to work with and the new code structure is expecially noticable in the way that example servers and clients are now packaged for release.

Latest release of licensed socket server code: 6.0

The latest release of The Server Framework is now available. This release includes the following changes. The following changes were made to the libraries. Admin Library - 6.0 Added back the Admin\VC6Compatibility directory with sal.h for VS.Net (2002) and VS 2003. The directory is now called Admin\Compatibility and you need to copy sal.h to your compiler’s include directory if it complains about it being missing. Some more changes with how Admin.

Automatically pruning empty log files

The log file rotation code that I wrote a while back has been working well for several clients. Recently someone suggested that the design of their server’s logging meant that they tended to generate lots of useful information on server start up and server shutdown and then nothing until the server had problems. This meant that they were ending up with lots of empty log files as the hourly, or daily, or weekly rotation period would create a new file and most of the time nothing would be written to it.

Testing SChannel code

I developed the new SChannel SSL adapter for The Server Framework in a mostly test driven style; a while ago I called this Just In Time Testing… It worked well and, to be honest, I couldn’t imagine developing code as complex as the SChannel adapter without tests; though as I noted when I first set out on the development, back in 2001 I’d developed the corresponding OpenSSL adapter without any tests at all… The tests worked well for me this time around and I was able to both learn about the SChannel API that I was using and implement the required code far easier with the tests in place.

Memory leak in SChannel SSL code

I’ve just had a memory leak in the SChannel SSL code reported by a client. It’s a fairly fundamental leak has highlighted an omission in the mock buffer allocators that I use to test this kind of code; it also highlights that the SChannel code was somewhat rushed to release before Christmas. I’m working on a fix now and the changes will be included in the 5.2.5 release of the SChannel code.