270 likes | 433 Views
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. NMU’s Computers. Every student gets a laptop We load them with Java, C++, PuTTY
E N D
Northern Michigan University • Regional University • Normal quality students • Some great • Some struggle • About 9,000 students and 200 majors • Have some money
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
Advantages of Linux • Source code available • But it’s huge • Parts are interesting • System very inspectable • Can see what’s happening inside
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
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
Pride of Ownership • Everyone gets their own computer • They install everything on it • When it breaks, it’s their fault.
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
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.
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 The Problem List
No Cheating (kinda) • Don’t let students keep backup copies of /etc
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.
Operating System Class • Students are seniors. • Goals are OS algorithms, not too much code.
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
Top is Interesting 11:08pm up 61 days, 5:45, 16 users, load average: 0.00, 0.00 84 processes: 81 sleeping, 1 running, 2 zombie, 0 stopped CPU0 states: 0.1% user, 0.1% system, 0.0% nice, 98.0% idle CPU1 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle Mem: 512920K av, 497660K used, 15260K free, 356K shrd, Swap: 497972K av, 9324K used, 488648K free PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAN 422 randy 15 0 1040 1036 820 R 2.8 0.2 0:00 top 1 root 8 0 116 68 68 S 0.0 0.0 0:04 init 2 root 9 0 0 0 0 SW 0.0 0.0 0:00 keven 3 root 19 19 0 0 0 SWN 0.0 0.0 0:00 ls
Strace is Interesting • strace /bin/ls • Uses 119 syscalls • Open 21 files!!!!!! • Writes 3 times. • Goal: Give a real picture for how things work
Benchmarking • Easy to make a benchmark • Time consuming to run them • Whole class can do one run • Always experimental error
Benchmarking Ideas • Compile time vs RAM • Read time vs read size • Never get to disk performance • Which is faster, open or read?
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!
Linux Benchmarking Project • Three kids • Is the kernel bloated and slow? • Compare new and old kernels • Count lines • Use lmbench • Teacher was interested, too!
Benchmarking Results • Experimental Errors Experienced. • Teamwork errors too! • Email from Linux, Alan Cox, etc. • Article on Slashdot • Speech at Argonne National Lab. • Professional Recognition
Unexpected Learning • Army comes to arrest fellow prof • They were very nice people. • Student interest in security soars. • Learning happened • ACS is angry
Unexpected Learning (cont) • We shutdown campus.net • And a business in California • Students suddenly interested in our connectivity • Internet law became interesting too.
Conclusion • Good Teaching is good teaching! • Need to be enthused. • Need to be hands-on. • Need to show examples.
Linux Helps with Teaching • Showing code examples. • Inspect a running system