This is a planned series of presentations to take place at the University of Calgary in May 2014, as a part of a hands-on x86_64 hobbyist operating system development workshop.

A basic background in low-level programming is assumed; this means things like a good understanding of how pointers operate is a prerequisite. Experience with any sort of assembly is also assumed; Intel assembly is a bonus but not required.

The goals for the workshop are for participants to:

See the topic map for more details on the structure and topics covered.

Meetings are tentatively scheduled for each Tuesday and Saturday in May from 1830-2030 in the undergraduate computer labs at the University of Calgary. This time is open to change based on availability of participants.

Arrangements are being made for the presentations both to be recorded and broadcast live for people at remote locations to participate. If you want to participate in the live broadcast, send me an email.

Expected background

Suggested preliminary reading

Useful resources


You can email me at the address in the webpage footer, or at my University email address if you prefer.

There are several ways to reach other parties interested in kernel development. I've reserved the #uc-kdw IRC channel on Freenode for the purposes of this workshop, but there is also the more general #osdev channel there. The OSDev forums may be worth a visit if you have an esoteric issue. There is also a mailing list set up for participants; send an email to if you would like to join.