Linux System Programming Dojo - II, Report

The second edition of the "Linux System Programming Dojo" was organized by Embedded Linux Meetup Group. The Embedded Linux Meetup Group is a Zilogic Systems initiative to bring together people working on Linux in Embedded Systems, with the hope to share knowledge and ideas.

The first coding dojo was held in 19 June, where people got together and implemented command line tools — ls, ps, rm, df.

The second coding dojo was organized on 23 July. A mix of code Kabalis and newbies participated in the event.

The event started with Vijay, explaining what a Dojo is all about. He then explained a bit about processes, forking and fd tables. He then gave a quick overview of the custom written shell (available from https://git.io/vKwPc). The tiny shell used a menu like interface, and had support for changing directories and executing commands in the foreground. He then suggested 2 tasks that people can take up.

  1. Implement redirection of command output.

  2. Implement setting of environment variables.

People were divided into groups, and each group started independently working on the task. The coding session, was benificial to both experienced people and newbies. Newbies learnt about Linux system programming from the experienced people. And when the experienced people explained the concepts, their own understanding of the system got reinfornced. Overall, it was a win-win situation for everybody.

After 1.5 hours of coding we broke out for networking break.

http://photos4.meetupstatic.com/photos/event/5/4/6/600_452401350.jpeg

It was then time, for the code review. Each team presented their code, and others provided feedback and comments. Some common mistakes identified during the review is listed below.

  1. Not using O_TRUNC, while open the file for writing, during redirection.

  2. Missing out check for failures in the open() syscall.

  3. Specifying incorrect permissions in open() syscall.

That brought us to the end of the event. People were requested to join the Embedded Linux Meetup group http://meetup.com/embedded-linux And we had a groufie before dispersing.

http://photos2.meetupstatic.com/photos/event/c/b/7/600_452523255.jpeg