Presentation is loading. Please wait.

Presentation is loading. Please wait.

Course Overview Mark Stanovich COP 5641 / CIS 4930.

Similar presentations


Presentation on theme: "Course Overview Mark Stanovich COP 5641 / CIS 4930."— Presentation transcript:

1 Course Overview Mark Stanovich COP 5641 / CIS 4930

2 Instructors Lead Instructor: Mark Stanovich  Office: 105-E Love Building  Office hours After class and by appointment (email) TA: Muye Liu  Office hours: TBA Class Websites  http://ww2.cs.fsu.edu/~stanovic/teaching/ldd/ http://ww2.cs.fsu.edu/~stanovic/teaching/ldd/  Blackboard

3 Meeting Place and Times Tuesday/Thursday: 9:30am – 10:45am  LOV 103 (sometimes at MCH 202) You will work in lab MCH 202  You will spend lots of time on projects  Projects will need to be done in the lab, unless you have a PC that you:  Don't mind corrupting  Can bring into the lab for demos

4 Course Objectives Make yourself into a Linux kernel “hacker”, who can:  Configure, compile, and install a Linux kernel  Do the same for a kernel module  Understand and make changes to the sources  Use internal kernel services  Design and implement a kernel module  Modify/design and implement a device driver  Measure the performance of your implementation

5 Applicability of Kernel Hacking Skills Software engineering Concurrent programming Thesis and dissertation Employment  Final project can be added to your portfolio

6 Prerequisites COP 4610  Undergraduate Operating Systems or, COP 5570  Concurrent, Parallel, and Distributed Programming (old Advanced Unix Programming) or,  Proficiency in Unix environment and C, and  General knowledge of operating systems design principles

7 Course Material Lecture notes (posted at the class website) Required textbook  Linux Kernel Development (3 rd Ed)  ISBN: 978-0672329463

8 Course Material Recommended additional textbook  Linux Device Drivers, 3 rd Edition  ISBN: 0-596-00590-3 Online version (free)  http://www.lwn.net/Kernel/LDD3 http://www.lwn.net/Kernel/LDD3

9 Class Grading Assignment 1 (individual): 10% Assignment 2 (prob. individual): 5% Assignment 3 (individual): 15% Assignment 4 (individual): 15% Assignment 5 (team + report): 30% Quizzes:25%

10 Assignments Reading Programming  You will be provided access to a PC (MCH 202) It may need to be shared  First four assignments: lab exercises  Last assignment: team projects Each member will evaluate the contribution of the other team members  Warning: they get more difficult, exponentially

11 Some Possible Team Projects Device drivers  Raspberry pi  Cellular phone sensors  Virtual devices (virtual machine pass-through)  Solid-state storage (e.g., flash)  Future course lab project  Add functionality to an existing device driver May partially include upgrading to a recent version of the kernel

12 Some Possible Team Projects New kernel features/optimizations  Optimize storage management routines  Security  Assist with ongoing research projects  Scheduling (CPU, block layer) Your ideas?

13 BEWARE Assignments may be very time consuming  Non-deterministic error  Obscure error symptoms May not have much information about where/when an error occurred Fewer and more difficult to setup debugging tools  Need frequent reboots and OS reinstallations Implications  Start your projects early  You are responsible for backing up your work

14 BEWARE If you plan to use your own computer  You will need to bring in your machine to demonstrate your code  You might trash your hard drives

15 Some Useful Tools Good editor, IDE (search code) Git (backup, versions) General knowledge of Linux logging subsystem Knowledge of grub usage Kernel debugging tools  Kdb, gdb (on modules)  “Kernel hacking” configuration menu items  “Magic SysRq”

16 Quizzes Several short quizzes  Not necessarily announced in advance Will throw out one quiz (worst score) Missed quizzes  For excused absences or lateness No make-ups for missed quizzes For excused absences or lateness  The missing quizzes will be dropped

17 Class Grading 91% - 100%A 89% - 90%A- 85% - 88%B+ 81% - 84%B 79% - 80%B- 75% - 78%C+ 71% - 74%C 69% - 70%C- 64% - 68%D+ 61% - 63%D 59% - 60%D- 0% - 58%F

18 Computer Accounts, etc. Blackboard account (@my.fsu.edu)  Grade posting via Blackboard Card activation for MCH 202 lab  Fill out survey  Need your FSU card number Your choice of a 4 digit PIN #

19 Course Policies Attendance mandatory Honor code: read your student handbook Students with disabilities  Report to Student Disability Resource Center  Bring me a letter within the first week of class

20 Things for you to do Fill out survey form and turn in at the beginning of Thursday’s class Reading  Syllabus  Start with LKD Chapters 1 and 2 (quick overview)  Then read LDD Chapters 1 and 2 for more depth Familiarize yourself with Assignment 1


Download ppt "Course Overview Mark Stanovich COP 5641 / CIS 4930."

Similar presentations


Ads by Google