This page will be updated with informations about the course practical sessions. For the theoretical course go to http://progcours.ulg.ac.be/cocoon/en/cours/INFO0940-1.html . Laurent Mathy provides his slides (and the exams questions) on myULg.
Groups
Two students per group. Registration is done on the submission platform.
Slides and Assignments
- OS – 1 Introduction
- OS – 2 Shell & Kernel Interaction
- OS – 3 Virtual Machine
- OS – 4 Programming in the Linux Kernel
- OS – 5 System call
- OS – 6 Corrections
- OS – 7 File Systems
Downloads & Links
- Reference image 2016 v1 , the user is student and the password is the course number in capital letter without a dash. Use “xz -d 2016-v1.vdi.xz” to decompress the image.
- Kernel 4.4.50 sources
Last informations / FAQ
Most of the comments related to last year’s project still apply !
Last years comments :
Where to do your tests when compiling a kernel?
- Compile on your linux machine, do your test in a virtual machine :
The best is probably to install linux (ubuntu is the easiest) on your machine, and use the VM provided to do your tests on this machine. This is the configuration proposed on the slides. - Compile on a virtual machine, do your test in another one :
It’s very difficult to compile the linux kernel on Windows or Mac OS (but can be done with cross-compiling, google it). You may simply use one virtual machine with for example, ubuntu installed with multiple cores, a lot of ram and disk space to compile the kernel and develop on it, and use another virtual machine with one core and the image provided to run the compiled kernel. - Compile on ms801 .. ms820, and do your test in a virtual machine on your computer or on those machines : The students following this course are granted access to (Linux) lab machines ms801 .. ms820 with virtual box pre-installed. You can generate a login/password on the student of montefiore website. Marc Frédéric is in charge of this lab and may be able to help you if you’re stuck.
Meeting / help
Don’t want to bother me? You’re in the right mood ! Try the course discussion page on the submission platform !
You can come to my office after making an appointment sending me an e-mail to tom.barbette@uliege.be. I’m usually not there thursday AM, don’t try. If you’re feeling lucky, you can come without an appointment. Monday AM is not a good idea either 😉
Previous years posts
2016-2017
2015-2016
- A word about mode 3
- Profiling of Socket, PCAP and Fastnet to receive RAW packets in userspace
- Step 7 : Go back to mode 0 on file close
- Update about Step 6
- 3 reasons why it is better to use rx_handler_private than adding fastnet_mode
- consume_skb vs kfree_skb
- Step #5 update and Step #4 correction
- A reminder about packets in networks
2014-2015
- A Linux bug you can now understand
- The MD personnality
- Limiting the incoming Block I/O requests to a device driver/md device
- Creating a dynamic and redundant array with LVM and MDADM
- Block I/O caching
- Using a thread to do the swapping in assignment #2 is now a bonus
- MDADM git repository
- Introduce delay between printk (kernel messages) at boot
2013-2014