assessment of ceg 233: linux and windows coordinator: prabhaker mateti
TRANSCRIPT
Assessment ofAssessment ofCEG 233: Linux and WindowsCEG 233: Linux and Windows
Coordinator: Prabhaker MatetiCoordinator: Prabhaker Mateti
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 22
Catalog DescriptionCatalog Description
Introduction to Linux and Windows systems. GUI and Introduction to Linux and Windows systems. GUI and Windowing Systems. Files and Directories. Ownership Windowing Systems. Files and Directories. Ownership and Sharing. Programs and Processes. System calls, and Sharing. Programs and Processes. System calls, Libraries. Loading. Dynamic linking. Command Line Libraries. Loading. Dynamic linking. Command Line Shells. Scripting languages. Regular expressions. Shells. Scripting languages. Regular expressions. Clients and Servers. Clients and servers. Secure shell, Clients and Servers. Clients and servers. Secure shell,
sftp. SSL/TSL. HTTPS. System Administration. sftp. SSL/TSL. HTTPS. System Administration.
4 credit hours. 3 hours lectures, 2 hours labs.4 credit hours. 3 hours lectures, 2 hours labs. Prerequisite ††Prerequisite ††: CS 240 or CS 220 or CS 141 or CS 208.: CS 240 or CS 220 or CS 141 or CS 208.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 33
Course ObjectivesCourse Objectives
The student should:The student should:
1.1. Understand the command-line user Understand the command-line user interface of both Linux and Windowsinterface of both Linux and Windows
2.2. Understand what scripting is Understand what scripting is
3.3. Understand OS internal structureUnderstand OS internal structure
4.4. Develop a feel for a Windows-alternative Develop a feel for a Windows-alternative OS OS
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 44
Desired OutcomesDesired Outcomes
1.1. Is comfortable in using Linux and Windows at Is comfortable in using Linux and Windows at the command-line levelthe command-line level
2.2. Can manage files on Linux and Windows: ls, Can manage files on Linux and Windows: ls, cd, mkdir, rm, ln, chmodcd, mkdir, rm, ln, chmod
3.3. Can use powerful text editing tools: emacs, vi, Can use powerful text editing tools: emacs, vi, regular expressionsregular expressions
4.4. Can write bash and cmd scriptsCan write bash and cmd scripts5.5. Can use tools such as: file, size, grep, sed, Can use tools such as: file, size, grep, sed,
find ps, top, kill, cat, ddfind ps, top, kill, cat, dd6.6. Can use remote computers: ssh, sftpCan use remote computers: ssh, sftp
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 55
Outcome Measures and Outcome Measures and Assessment Assessment
Student progress in achieving the desired Student progress in achieving the desired objectives and outcomes for this course will be objectives and outcomes for this course will be monitored and measured through monitored and measured through
use of entrance and exit surveys, use of entrance and exit surveys, There is a self-assessment conducted at the There is a self-assessment conducted at the
beginning and beginning and another at the end of the term. another at the end of the term.
programming assignments, homework, quizzes, programming assignments, homework, quizzes, examinations, examinations,
success in the courses that use CEG 233 as a success in the courses that use CEG 233 as a prerequisite.prerequisite.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 66
Course Content: By TopicsCourse Content: By Topics1.1. Operating Systems, Systems implementation languages; From Operating Systems, Systems implementation languages; From
booting to shut down.booting to shut down.2.2. Unix file system design. The structure of i-nodes. The mechanism of Unix file system design. The structure of i-nodes. The mechanism of
mount.mount.3.3. The semantics and mechanics of file open, read/write, close and The semantics and mechanics of file open, read/write, close and
unlink.unlink.4.4. Shell Programming, File IO, redirection, Filters and pipes. Pointers Shell Programming, File IO, redirection, Filters and pipes. Pointers
to functions.to functions.5.5. main(argc, argv, envp). Unix system calls, Signal handling. setjmp main(argc, argv, envp). Unix system calls, Signal handling. setjmp
and longjmp.and longjmp.6.6. Dynamic storage allocation and liberation.Dynamic storage allocation and liberation.7.7. Virtual memory. Address spaces. Swapping, Page replacement Virtual memory. Address spaces. Swapping, Page replacement
algorithms.algorithms.8.8. IO subsystem: DMA; Interrupt handlers; driver interfaces; overview IO subsystem: DMA; Interrupt handlers; driver interfaces; overview
of drivers.of drivers.9.9. Case Studies: Linux or Windows.Case Studies: Linux or Windows.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 77
Course Content: By LecturesCourse Content: By Lectures1.1. Overview of Course, Lectures, Labs; Linux, Windows; Other OSOverview of Course, Lectures, Labs; Linux, Windows; Other OS2.2. Linux KDE, Gnome, and bash. Windows cmd, and GUILinux KDE, Gnome, and bash. Windows cmd, and GUI3.3. OS=VM +FileM +ProcM +Net +IO +UserM +(Boot) +[SysPrg] OS=VM +FileM +ProcM +Net +IO +UserM +(Boot) +[SysPrg] 4.4. Virtual Memory: Pages, faults, swapsVirtual Memory: Pages, faults, swaps5.5. Programs: Compiling, Linking, Libraries, Executable formatsPrograms: Compiling, Linking, Libraries, Executable formats6.6. Processes: Loading, dynamic and static, states; parent-childProcesses: Loading, dynamic and static, states; parent-child7.7. System Calls; System Programs; Tracing sys and lib callsSystem Calls; System Programs; Tracing sys and lib calls8.8. Files: Volumes. Open/Close, Dirs, and Links. Compression, Files: Volumes. Open/Close, Dirs, and Links. Compression,
ArchivesArchives9.9. Users: Passwords, Privileges, Ownership, PrivacyUsers: Passwords, Privileges, Ownership, Privacy10.10. File-name RegEx.File-name RegEx.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 88
Course Content: By LecturesCourse Content: By Lectures
11.11. String Search/Replace RegEx. String Search/Replace RegEx. 12.12. Editing. emacs, vi, sed, grep, findEditing. emacs, vi, sed, grep, find13.13. More on bash; More on cmdMore on bash; More on cmd14.14. Network layer: IP addr. Ports. TCP, DNS, DHCP.Network layer: IP addr. Ports. TCP, DNS, DHCP.15.15. IMAP, HTTP, NFS and Samba. Security and FirewallsIMAP, HTTP, NFS and Samba. Security and Firewalls16.16. More on bash; More on cmdMore on bash; More on cmd17.17. Windows Sys Admin. Std Processes. Patches. Windows Sys Admin. Std Processes. Patches.
Registry.Registry.18.18. Linux Sys Admin. Distributions, updatesLinux Sys Admin. Distributions, updates19.19. Discussion: OS? Kernels? Systems Programs? Discussion: OS? Kernels? Systems Programs?
Applications? Contemporary IssuesApplications? Contemporary Issues
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 99
Class/Laboratory ScheduleClass/Laboratory Schedule
Each week has two lectures of 75-minutes each.Each week has two lectures of 75-minutes each. Scheduled labScheduled lab
Unscheduled †: Unscheduled †: 2007 Fall2007 Fall 2 * 55-minutes: 2 * 55-minutes: 2007 Winter InterSession2007 Winter InterSession 1 * 110-minutes:1 * 110-minutes: 2008 Winter2008 Winter 2 * 55-minutes:2 * 55-minutes: 2008 Spring2008 Spring † † Students are expected to work in open labs for no Students are expected to work in open labs for no
less than 2 hours a week.less than 2 hours a week.
There are 8 labs for the course, each worth 5%. There are 8 labs for the course, each worth 5%.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1010
GradingGrading
Mid TermMid Term 25%25%FinalFinal 35%35%8 Labs8 Labs 40%40%
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1111
Prerequisites by TopicPrerequisites by Topic
1.1. Programming Concepts: Variables, Programming Concepts: Variables, arrays, loops, if statements arrays, loops, if statements
2.2. Program development tools: editors, Program development tools: editors, compilers, linkers, debuggers compilers, linkers, debuggers
3.3. Windows OS (power) user Windows OS (power) user
4.4. Can read email.Can read email.
5.5. Can surf the web. Can surf the web.
6.6. ** All the Above Discussed Later **** All the Above Discussed Later **
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1212
Voted The Hardest LabVoted The Hardest Lab Develop sortMP3Files() that "sorts" and moves MP3 files Develop sortMP3Files() that "sorts" and moves MP3 files
located in the SOURCE directory into the DEST located in the SOURCE directory into the DEST directory. directory.
Create a subdirectory in DEST for each new album Create a subdirectory in DEST for each new album name seen among the SOURCE files. name seen among the SOURCE files.
Move an MP3 file with an album tag of AlbumX into Move an MP3 file with an album tag of AlbumX into DEST/AlbumX directory unless a file with that name DEST/AlbumX directory unless a file with that name already exists. already exists.
Rename the MP3 files of album directories of DEST so Rename the MP3 files of album directories of DEST so that they are now of the form that they are now of the form nn-Album-Artist.mp3nn-Album-Artist.mp3. .
Do all the above in Windows cmd and Linux bash.Do all the above in Windows cmd and Linux bash.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1313
Contribution to Professional Contribution to Professional ComponentComponent
CEG 233 contributes 4 hours to the CEG 233 contributes 4 hours to the Criterion 4(b)Criterion 4(b)
Also contains engineering design.Also contains engineering design.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1414
Course Contribution to Program Course Contribution to Program Educational ObjectivesEducational Objectives
CEG 233 contributes to Objectives 1 and CEG 233 contributes to Objectives 1 and 2. 2.
Through exposure to the use of an Through exposure to the use of an operating system other than Windows, it operating system other than Windows, it widens the skills. widens the skills.
The design experience gained through the The design experience gained through the course labs is realistic. course labs is realistic.
The student is also prepared to move on to other The student is also prepared to move on to other operating systems both past and future ones.operating systems both past and future ones.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1515
Course Contribution to Program Course Contribution to Program Outcomes and AssessmentOutcomes and Assessment
a b c d e f g h i j k
0 PX PX 0 PX 0 P PX PX PX PX
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1616
ABET Criteria 3 Supporting ABET Criteria 3 Supporting StatementsStatements
B: Learning through practice and trial-and-error occurs in this course.B: Learning through practice and trial-and-error occurs in this course. C: This is a lab/project driven course.C: This is a lab/project driven course. E: Because of an understanding of skilled use of an OS, better computer E: Because of an understanding of skilled use of an OS, better computer
solutions can be formulated.solutions can be formulated. G: The problem formulation is in English, and the solution is in a formal G: The problem formulation is in English, and the solution is in a formal
language.language. H: The development of user interfaces, and permissions to various H: The development of user interfaces, and permissions to various
computer resources is presented in the societal context.computer resources is presented in the societal context. I: The student realizes that in his/her life-time he will need to work with many I: The student realizes that in his/her life-time he will need to work with many
OS, that there will not always be courses to take, that he should engage in OS, that there will not always be courses to take, that he should engage in life-long learning.life-long learning.
J: The student learns about contemporary issues such as the open source J: The student learns about contemporary issues such as the open source movement, document formats, software protection and how Linux was movement, document formats, software protection and how Linux was developed.developed.
K: Modern program development tools are used in the project. Internet K: Modern program development tools are used in the project. Internet based discussions help the student receive prompt answers from other based discussions help the student receive prompt answers from other students and the instructor.students and the instructor.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1717
Conformance to ABET SyllabusConformance to ABET Syllabus The course conforms to the published ABET The course conforms to the published ABET
syllabus.syllabus. Course ContentCourse Content
The course has been taught by the coordinator for the The course has been taught by the coordinator for the last 4 terms.last 4 terms.
There are no issues of conformance that need to be There are no issues of conformance that need to be addressed.addressed.
GradingGrading Minor (< 6%) variations in grading weights have Minor (< 6%) variations in grading weights have
occurred.occurred. Lab work, Midterm and Finals remained at 40, 25 and Lab work, Midterm and Finals remained at 40, 25 and
35% respectively.35% respectively.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1818
Course Related ObservationsCourse Related Observations
Course content has been stable for the Course content has been stable for the last 4 terms.last 4 terms.
Students experience XP, KDE and Gnome Students experience XP, KDE and Gnome GUI environments and cmd and bash CLI.GUI environments and cmd and bash CLI.
Many students have their home PCs Many students have their home PCs running installed/LiveCD Linux.running installed/LiveCD Linux.
Many students have better PCs at home Many students have better PCs at home than our lab PCs.than our lab PCs.
Students become better Co-op InternsStudents become better Co-op Interns
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 1919
Course EvolutionCourse Evolution
Scheduled labScheduled labUnscheduled †: Unscheduled †: 2007 Fall2007 Fall2 * 55-minutes: 2 * 55-minutes: 2007 Winter InterSession2007 Winter InterSession1 * 110-minutes:1 * 110-minutes: 2008 Winter2008 Winter2 * 55-minutes:2 * 55-minutes: 2008 Spring2008 Spring† † Students are expected to work in open labs Students are expected to work in open labs
for no less than 2 hours a week.for no less than 2 hours a week.Two 55-min labs are way better than one Two 55-min labs are way better than one
110-min lab.110-min lab.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 2020
Course ImprovementCourse Improvement
Students need significantly more “help Students need significantly more “help hours” than we can provide with instructor hours” than we can provide with instructor and grader office hours. and grader office hours. Two graders (limited to 10 hours/week) has 4 Two graders (limited to 10 hours/week) has 4
hours/week of help hours and the rest for hours/week of help hours and the rest for grading and scheduled labs. Not enough.grading and scheduled labs. Not enough.
No TA has been assigned for this required No TA has been assigned for this required course.course.
May need to introduce a “pre-lab”.May need to introduce a “pre-lab”.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 2121
Prerequisites by Topic: ProblemsPrerequisites by Topic: Problems
1.1. Programming Concepts: Variables, arrays, loops, if statements Programming Concepts: Variables, arrays, loops, if statements 2.2. Program development tools: editors, compilers, linkers, debuggers Program development tools: editors, compilers, linkers, debuggers 3.3. Windows OS (power) user Windows OS (power) user 4.4. Can read email.Can read email.5.5. Can surf the web.Can surf the web.
Prereq (as of 2008 Spring): NonePrereq (as of 2008 Spring): None Many students took CEG 233 as their Many students took CEG 233 as their
first CS/CEG course.first CS/CEG course. Makefile, etc. cannot be meaningfully Makefile, etc. cannot be meaningfully
discussed.discussed.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 2222
Prerequisites by Topic: SolutionsPrerequisites by Topic: Solutions
Prereq (†† soon to be official): Prereq (†† soon to be official): CS 240 or CS 220 or CS 141 or CS 208CS 240 or CS 220 or CS 141 or CS 208
Bump the prereq up?Bump the prereq up? CS 241 or …CS 241 or …
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 2323
Teaching AssignmentsTeaching Assignments
Should the course be assigned to the Should the course be assigned to the same instructor again and again?same instructor again and again?My answers:My answers:
Alternate terms taught by different instructors.Alternate terms taught by different instructors.When the course is taught by multiple instructors When the course is taught by multiple instructors
significant conformance issues may arise. significant conformance issues may arise. Common problem with several of our courses.Common problem with several of our courses.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 2424
Course Schedule SuggestionsCourse Schedule Suggestions
Should the course be taught every term?Should the course be taught every term? Yes.Yes.
CEG233 has been taught four times so far CEG233 has been taught four times so far (including Winter InterSession). (including Winter InterSession). 2007 Fall, 2007 Fall, 2 sections, 2 sections, 60 students60 students 2007 WIS, 2007 WIS, 1 section, 1 section, 25 students25 students 2008 Winter, 2008 Winter, 1 section, 1 section, 25 students25 students 2008 Spring, 2008 Spring, 1 section, 1 section, 40 students40 students
With GTA support, class size can be increased.With GTA support, class size can be increased.
May 2, 2008May 2, 2008 Mateti:CEG233-ABET-2008Mateti:CEG233-ABET-2008 2525
CEG 233 SummaryCEG 233 Summary Required Course in BACS, BSCS, BSCERequired Course in BACS, BSCS, BSCE 4 credit hours4 credit hours Scheduled WorkScheduled Work
75-minute lectures: 2 per week75-minute lectures: 2 per week Scheduled labs: 2 hours per weekScheduled labs: 2 hours per week
Official Lab: OSIS Lab (429 RC)Official Lab: OSIS Lab (429 RC) 30 general purpose PCs.30 general purpose PCs. One file server/firewall.One file server/firewall. Configured to multi-boot into several OSs.Configured to multi-boot into several OSs. Open 24x7Open 24x7
Can the assigned project work be done elsewhere?Can the assigned project work be done elsewhere? Yes.Yes.
Most Helpful SuggestionMost Helpful Suggestion Assign helpers: One undergraduate helper per 10 students at 10 Assign helpers: One undergraduate helper per 10 students at 10
hrs/week stationed in the Lab.hrs/week stationed in the Lab.