an operating systems course integrated with wap tools: first experiences ahmet koltuksuz, ph.d.,...

25
An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, [email protected]} Izmir Institute of Technology, Dept. of Comp. Eng. Izmir, Turkey

Upload: raven-bowns

Post on 01-Apr-2015

222 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

An Operating Systems Course Integrated With WAP Tools: First Experiences

Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D.

{ahmetkoltuksuz, [email protected]}

Izmir Institute of Technology, Dept. of Comp. Eng.Izmir, Turkey

Page 2: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Agenda

• Course history

• Enter WAP

• WAP workshop in Izmir Institute of Technology

Contents – Attendees – Microsoft side

• What is this WAP anyway

• Implementing WAP with curriculum

• Course schedule – books for the class & for the lab – grading & the performance

• Findings

Page 3: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Course History

– An Operating Systems course, coded as CENG312 for juniors, had been

taught with “Windows APIs” and multi-threaded applications and IPC

implementations in accordance with the books by Silbershatz, A., Galvin,

P.A., Gagne, G.; “Operating System Concepts”, and by Nutt, G.,

“Operating System Projects Using Windows NT” for the past three years

in Izmir Institute of Technology.

Page 4: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• WAP Workshop – a small history...

– Early in February 2007, Microsoft Turkey provided WAP for the first time for us

to discover the new opportunity.

– Did meet Dr. Retik and Dr. Probert in Microsoft MEA Academic Days

2007,Tunisia.

– After attending to their WAP workshop, decided to have one in Turkey too.

– Then held a workshop on WAP in our department on September 15th & 16th of

2007 with great contributions of Dr. Retik and Dr. Probert of whom both from

Microsoft, Redmond, USA.

Page 5: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Workshop on WAP, Windows Kernel Source and Internals: Sept. 15-16 2007, İzmir Institute of Technology, Turkey.

Workshop description:Windows Academic Program Workshop provides information and practical hands-on knowledge of the content, access to the Windows kernel source code, curriculum materials and a project environment for teaching and researching operating system principles. Instructors are Dave Probert (Kernel Architect, Windows Core Operating Systems Division, Redmond) and Arkady Retik (Windows Academic Program Manager, Source Asset Management, Redmond)

Page 6: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Workshop on WAP, Windows Kernel Source and Internals: Sept. 15-16 2007, İzmir Institute of Technology, Turkey

Workshop objectives:Introduce faculty members to the Windows Academic Program (WAP) materials, Provide rudimentary hands-on experience accessing the Curriculum Resource Kit (CRK), building the Windows Research Kernel (WRK), and ProjectOZ, and Share ideas on how to successfully use these for lectures and projects/labs. Content/Areas covered:Windows Kernel Internals overview Use of the Curriculum Resource Kit (CRK) and other resources to build/augment OS curriculum Compiling and running the Windows Research Kernel (WRK) on VirtualPC. Hands-on project: ProjectOZ overview

Page 7: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

September 17th 2007, First day of Microsoft WAP Workshop

10:00-10:30 Opening speeches:

Dr. Aytaç; Head of dept.:Welcome Mrs. Yurtseven to introduce Dr. Retik &

Dr. Probert Dr. Koltuksuz: Misc. info

10:30-11:30 Microsoft operating systems: A historical perspective

Dr. D. Probert

11:30-12:30 Windows Academic Program update Dr. A. Retik 12:30-14:00 Lunch 14:00-15:00 Windows kernel internals Dr. A. Koltuksuz 15:00-15:30 Coffee break 15:30-16:30 Windows kernel internals/WRK Dr. D. Probert - Dr. A. Koltuksuz 16:30-17:00 Discussion & Q_n_A Group

September 18th 2007, Second day of Microsoft WAP Workshop

08:00-09:00 Shuttle from Sabancı Center, Izmir to

IZTECH, Dept. of Computer Eng. Group

09:00-10:00 CRK Session Dr. Retik - Dr. Probert 10:00-10:30 Coffee break 10:30-12:30 WRK Lab Dr. Retik - Dr. Probert 12:30-14:00 Lunch 14:00-16:00 OZ session/ What’s new in Vista Dr. Retik - Dr. Probert 16:00-16:15 Coffee break 16:15-17:00 Discussion / Panel with current users Group

Workshop Agenda

Page 8: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Workshop on WAP, Windows Kernel Source and Internals: Sept. 15-16 2007, İzmir Institute of Technology, Turkey

The attendees

– The professors, instructors & TAs of the course of Operating Systems

from Dokuz Eylul University, Ege University, Izmir University of

Economics, Yasar University, Bilkent University and, from Izmir

Institute of Technology reaching to a total number of 26 academics.

Page 9: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Workshop on WAP, Windows Kernel Source and Internals: Sept. 15-16 2007, İzmir Institute of Technology, Turkey.– We hereby -again- extend our appreciations and thanks to

Dr. Dave PROBERT, Kernel

Architect, Windows Core

Operating Systems Division,

Redmond.

Dr. Arkady RETIK, Windows

Academic Program Manager,

Source Asset Management,

Redmond.

Eminay YURTSEVEN, Audience Marketing Manager, Developer & Platform, İstanbul, Turkey.

Dr. Cemal AKYEL,Developer & Platform Director, Ankara, Turkey.

Page 10: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Computer Engineering Courses

Course of Operating Systems

CRK: Curriculum Resource Kit

betteroperating systems education

WAP:WindowsAcademicProgram

Instruction

WRK: Windows Research Kernel

Research Application

ProjectOZ

Page 11: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Computer Engineering Courses

Course of Operating Systems

CRK: Curriculum Resource Kit

betteroperating systems education

WAP:WindowsAcademicProgram

Instruction Research Application

Windows Operating System Internals, Curriculum Resource Kit(CRK):Presentation slides, experiments, labs, quizzes and assignments for introducing case studies from the Windows kernel into operating system courses.

Page 12: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Computer Engineering Courses

Course of Operating Systems

betteroperating systems education

WAP:WindowsAcademicProgram

Instruction

WRK: Windows Research Kernel

Research Application

Windows Research Kernel (WRK):The core kernel sources and binaries integrated with an environment for building and testing experimental versions of the Windows kernel for use in teaching and research.

Page 13: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Computer Engineering Courses

Course of Operating Systems

betteroperating systems education

WAP:WindowsAcademicProgram

Instruction Research Application

ProjectOZ

ProjectOZAn operating systems project

environment that uses thenative kernel interfaces of Windows to provide simple, clean, user-mode abstractions of the CPU, MMU, trap

mechanism, and physical memory that can be used to perform

experiments in operating systems principles.

Page 14: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• After the WAP workshop

– Decided to utilize these WAP tools in our undergrad course “Ceng313-

Operating Systems” in a more efficient way.

– Thus, upgraded the course curriculum with the WAP tools and decided

to utilize the materials in the directory “Curriculum Resource Kit Units”

and to use the book named “Microsoft Windows Internals, 4th Edition,

Microsoft Press, 2004” by Russinovich & Solomon.

Page 15: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Implementation

– 2007-2008 Academic year

– Fall term

– Ceng 312 Operating Systems

– A must course for all fresmen

Page 16: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Week Lecture Topic(s) Course Details Course Materails Lab. Materails WAP CRK Sources

#1 02.10.2007 Introduction Operating Systems and their structures

Introduction.ppt System_Overview.ppt

Processes.ppt Operating System Model.ppt

Overview of Operating Systems – (Core) OS1 -

OS2

#2 8-12 Oct. Process Management Introduction to the concept of

processes and Threads, CPU Scheduling Algorithms

Processes_Threads_CPU_Scheduling.ppt

2.4_Win-API.ppt 2.5_Demos.ppt assignment.txt

Concurrency – (Core) OS3

#3 15-19 Oct. Process Management

Processes and Threads Scheduling Algorithms Multiprocessing with

multiprocessors

Windows_CPU_Scheduling.ppt

Win32 Threads Writing Multithreaded Software

Process-Thread Creation Assignment #1- "Writing Multithreaded Software with WinAPI"

assignment_1.txt

Scheduling and Dispatch – (Core) OS4

Gary Nutt Lab Book, Ch.2

#4 22-26 Oct. Asynchronous Concurrent

Processes I

Cooperating Processes, Interprocess Communication

Part #1 Processes_Cooperating_IPC.ppt

Windows_SynchIPC.ppt Demos-Labs

#5 29 Oct. 2 Nov.

Asynchronous Concurrent Processes II

Process Management “Process Synchronization”

Part #2 Processes_Synchronization.ppt

3.5_Assignment 3.5_Labs.ppt

3.5.2 Assignment #2- "Process Synchronization-1"

assignment_2.txt

#6 05-09 Nov. Deadlock Starvation and related problems

DeadLocks.ppt

4.6_Labs 4.6_Assignment

Assignment #3- "Process Synchronization-2" asignment_3.txt

#7 12-16 Nov. Memory Management I Memory organization, real memory organization

MemoryManagement.ppt System Mechanisms-Object Manager

(Windows Internals)

#8 19-23 Nov. Memory Management II Virtual memory organization, paging & segmentation plus

swapping VM_Management.ppt

IPC-Anonymous Pipes (Operating System Projects

by Gary Nutt)

Memory Management – (Core) OS5

Gary Nutt Lab Book, Ch.7

#9 26-30 Nov. Memory Management WAP 5.2_WinMemManagFundamentals Memory Mapped File (WAP Assignment 5.2.2:

Assignment #4- Memory Mapped File-qsort) file_mapping_summary.doc

#10 03-07 Dec. File Systems File System Interface and Implementation

File_Systems.ppt 8.2_NTFS.ppt

5.5_Assignment_2.doc Heap-qsort

File System – (Elective) OS8

#11 10-24 Dec. Midterm

WAP Assignment 5.2.3: mytr.exe using Windows API Heap functions

(Assignment #5-Virtual Memory (Operating System Projects

by Gary Nutt) )

#12 17-21 Dec. Input/Output Systems IO_Systems.ppt Holiday Device Management -

The Input/Output System – (Elective) OS6

Gary Nutt Lab Book, Ch.9

#13 24-28 Dec. Mass Storage Structure MassStorage_Structure.ppt disk_io.doc

Disk I/O

#14 31 Dec. 04 Jan.

Happy new year.. :) Holiday Lab_exam_and_asignment_6.doc

Solution of the Midterm lab question.

15 Jan.08 FİNAL

The Course Schedule

Page 17: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• The course books

– Silbershatz, A., Galvin, P.A., Gagne, G.; Operating System

Concepts, 6th Ed., John Wiley & Sons, USA, 2001.

– Russinovich, M. E., Solomon, D.A.; Microsoft Windows

Internals, 4th Edition, Microsoft Press, 2004.

– Nutt, G.J.; Operating Systems A Modern Perspective, 2nd

Ed., Addison Wesley, 2000.

Page 18: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Lab books & other references– Nutt, G.J.; Operating System Projects Using Windows NT,

Department of Computer Science University of Colorado,

1999.

– http://www.sysinternals.com :Tools used in labs and

experiments

– http://msdn.microsoft.com: Online resource for information

on APIs required during work on assignments.

Page 19: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Grading– This semester the course was taken by 58 juniors for

fourteen weeks of both course and lab. The grading was done as below:

[ 20% of midterm + 30% of final exam + 50% of the average of the lab assignments & a lab exam ]

Page 20: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• The overall performance– 12 juniors were unsuccessful out of 58 and they are to repeat the

course. So the overall success of the course is 79%.– The distribution of the grades for the whole class

Grades Distribution of Ceng 313 in 2007 Fall Term

FD22%

DD27%DC

10%

CC12%

CB9%

BB10%

BA10%

Page 21: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Our findings

1. Generally our students were far more attracted to the course and its labs

this year which clearly shows that they did easily grasp the concepts of

the course and thus they enjoyed implementing the exercises and

assignments in the laboratory that all conducted under WAP. At the end

of the year, the course was scrutinized by us and by our students in one

last session and we found out that our students were a lot more happier

since they were able to create and to implement OS codes easily.

Page 22: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Our findings (continued)

2. The freshmen did have some difficulties with the book “Microsoft Windows

Internals, 4th Edition” for the book actually requires a prerequisite

knowledge of OS theory. For that reason we feel that it is more suitable as

a secondary book for the course along with the other classical books on the

subject. However, this peculiarity makes the book perfect for grad level

studies. So we recommend that the book be utilized as a secondary for

undergrads while can be first for grad level studies and for code

development projects.

Page 23: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Our findings (continued)

3. The system-internals tools are quite useful to understand and to monitor the

objects and to clarify some troublesome concepts of operating systems

such as the difference between process and thread, performance

monitoring, scheduling and of memory usage. Since these tools add a

dimension of visualization to the hard-to-grasp theoretical concepts of OS

we highly recommend it for the undergrad education.

Page 24: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

• Our findings (continued)

4. Unfortunately the time didn’t permit us to fully utilize “virtual PC” and

“Project Oz” tools and thus they will be utilized in the next fall term.

However; we feel that these tools are more appropriate for the

miscellaneous code development projects and for the graduate level

courses.

Page 25: An Operating Systems Course Integrated With WAP Tools: First Experiences Ahmet KOLTUKSUZ, Ph.D., Serap ATAY, Ph.D. {ahmetkoltuksuz, serapatay@iyte.edu.tr}

Thank you so much for your time!