Transcript
Page 2: Using Linux at Northern Michigan University

Northern Michigan University

• Regional University• Normal quality

students– Some great– Some struggle

• About 9,000 students and 200 majors

• Have some money

Page 3: Using Linux at Northern Michigan University

NMU’s Computers

• Every student gets a laptop– We load them with Java, C++, PuTTY– We haven’t had success with VNC– We may not load them with Linux

• We have a Laboratory– Kinda silly with all the laptops– Great for system admin class

Page 4: Using Linux at Northern Michigan University

Advantages of Linux

• Source code available– But it’s huge– Parts are interesting

• System very inspectable– Can see what’s happening inside

Page 5: Using Linux at Northern Michigan University

System Admin Class

• Teach Basic Linux Admin– Incoming students typically juniors– Lots of students from CIS, a few from the

town– Assume students don’t know nothin’

• Frustrates some students• Works for others

Page 6: Using Linux at Northern Michigan University

Goals of System Admin Class

– Add/del users– Networking (NFS, Samba, YP, net printing)– Compile the kernel– Become YP/NIS server and client– Taste shell and perl programming– Independent learning

– DEBUGGING SKILLS ARE VITAL

Page 7: Using Linux at Northern Michigan University

Pride of Ownership

• Everyone gets their own computer

• They install everything on it

• When it breaks, it’s their fault.

Page 8: Using Linux at Northern Michigan University

Fences Make Good Neighbors

• Get a firewall between your lab and the world.– Leave access to the departmental server– Deny access to the world– Files are forced to move through the

departmental server

Page 9: Using Linux at Northern Michigan University

Teach How to Debug

• Break their computers for them.

• Give a lousy error message.

• Give points for fixing the problems.

• Everyone gets a unique problem set.

Page 10: Using Linux at Northern Michigan University

Never Let Students Hack Each Others Computer!!!!!

Page 11: Using Linux at Northern Michigan University

The Problem List

Points: 10Task: Fix telnetting to euclid ----Points: 15Task: I cannot ping Euclid ----Points: 5Task: What is your ethernet hardware (mac) address? ----

Task: Fix telnetting to euclid Cause: add "198.110.193.8 euclid euclid.nmu.edu" to /etc/hosts ----Task: I cannot ping Euclid Cause: Add the line 'exit' to the script /etc/rc.d/init.d/network ----Task: What is your ethernet hardware (mac) address? Cause: Just ask

Page 12: Using Linux at Northern Michigan University

No Cheating (kinda)

• Don’t let students keep backup copies of /etc

Page 13: Using Linux at Northern Michigan University

Grading is Important

• Don’t use a dumb grading scheme.

• If you give points for labs…– Then assignments will be 0% or 100%

• You must use tests and broken-labs too.

Page 14: Using Linux at Northern Michigan University

Operating System Class

• Students are seniors.

• Goals are OS algorithms, not too much code.

Page 15: Using Linux at Northern Michigan University

Using Kernel Source

• Don’t make them compile kernels.• Do show them code.

– Size– Grep for “stupid”.

• 106 stupids, 32 of the “other” word

– Show easy parts• Old scheduler• Read syscall

Page 16: Using Linux at Northern Michigan University

Kernel Size

Page 17: Using Linux at Northern Michigan University

Top is Interesting

Page 18: Using Linux at Northern Michigan University

Strace is Interesting

• strace /bin/ls– Uses 119 syscalls– Open 21 files!!!!!!– Writes 3 times.

– Goal: Give a real picture for how things work

Page 19: Using Linux at Northern Michigan University

Benchmarking

• Easy to make a benchmark

• Time consuming to run them

• Whole class can do one run

• Always experimental error

Page 20: Using Linux at Northern Michigan University

Benchmarking Ideas

• Compile time vs RAM

• Read time vs read size– Never get to disk performance

• Which is faster, open or read?

Page 21: Using Linux at Northern Michigan University

Independent Study

• Linux inspires kids.

• Source code is available

• Lots of tools

• Linux is new– There are projects to be done.– Can effect the world!

Page 22: Using Linux at Northern Michigan University

Linux Benchmarking Project

• Three kids

• Is the kernel bloated and slow?– Compare new and old kernels– Count lines– Use lmbench

• Teacher was interested, too!

Page 23: Using Linux at Northern Michigan University

Benchmarking Results

• Experimental Errors Experienced.– Teamwork errors too!

• Email from Linux, Alan Cox, etc.

• Article on Slashdot

• Speech at Argonne National Lab.

• Professional Recognition

Page 24: Using Linux at Northern Michigan University

Unexpected Learning

• Army comes to arrest fellow prof– They were very nice people.– Student interest in security soars.– Learning happened– ACS is angry

Page 25: Using Linux at Northern Michigan University

Unexpected Learning (cont)

• We shutdown campus.net– And a business in California– Students suddenly interested in our

connectivity– Internet law became interesting too.

Page 26: Using Linux at Northern Michigan University

Conclusion

• Good Teaching is good teaching!– Need to be enthused.– Need to be hands-on.– Need to show examples.

Page 27: Using Linux at Northern Michigan University

Linux Helps with Teaching

• Showing code examples.

• Inspect a running system


Top Related