Multimedia Systems Design. Klara Nahrstedt. University of Illinois. curriculum because digital audio/video information

Size: px
Start display at page:

Download "Multimedia Systems Design. Klara Nahrstedt. University of Illinois. curriculum because digital audio/video information"

Transcription

1 Multimedia Systems Design Teaching Students How to Design and Build Multimedia Systems Klara Nahrstedt University of Illinois Abstract \Multimedia Systems Design (MSD)" teaches graduate students principles and practice of large-scale multimedia system design. The biggest challenge to teach students how to design and build multimedia system is the integration aspect because multimedia systems integrate various computer science areas such as audio/video processing, operating system concepts, high-speed network protocols, user interfaces, and others. Our approach is to apply concepts and examples from these areas to construct a signicant project, namely a digital distributed VCR system. The course focus is on a large-scale, longlived software system of a size requiring group eort. We therefore address multimedia systems design, integrated implementation, maintenance, testing, documentation, code readability and group dynamics. The results which we have seen are (1) a large set of useful software which the student carries with them after the course is over; (2) a learning of new concepts in the area of audio/video processing and communications; (3) an understanding of integration importance when designing and building multimedia systems; (4) an appreciation of software design and maintenance, in particular group dynamics and communication; and (5) a greater understanding of advanced CS topics such as programming language design and implementation, user interfaces, compression algorithms, communications protocols, high-speed networks, and operating systems. We show how the student's knowledge, capabilities and understanding of lectured material together with engineering and scientic principles are related to the programming assignments of the VCR project. We also present the course methodology, and eval- This work was supported by the National Science Foundation Career Award, and Oce of Vice President for Academic Aairs, UIUC. uate project management, group structure and dynamics. Such a course is essential to Computer Science curriculum because digital audio/video information becomes a permanent part of our computing and communication environment. This course enables a student's transformation from a programmer with a few pieces of abstractions into a functioning computer scientist capable of designing and building future advanced multimedia systems. 1 Introduction There is a need for extension in the Computer Science curriculum towards multimedia system course. Digital audio/video information are becoming part of ubiquitous computational and communications environment. It means that the multimedia systems including this type of information are coming out of research laboratories and entering our educational organizations such as universities. The educational organizations use multimedia systems as tools to improve the education of traditional courses, and they apply this technology to increase the eectiveness of course preparation and teaching [SB95]. However, we also need courses which will teach the future computer scientists the basic concepts and principles how to design and build integrated multimedia systems. It is necessary but not sucient to have the knowledge of traditional courses such as programming languages, operating system, distributed systems, real time systems or networks. These courses typically introduce individual fundamentals (e.g., scheduling, protocols, distributed algorithms). The assignments are smaller: they demonstrate language features or build toy applications and data structures. They are, naturally, individual assignments. The multimedia systems are complex systems and require a non-trivial integration of individ- 1

2 2 ual traditional components with new concepts and approaches. We have developed a course Multimedia Systems Design which we believe ts the extension in the CS curriculum. It introduces new concepts, services, protocols, algorithms and integration of all of them to design and build future advanced multimedia systems. Furthermore, the focus is on the application of principles and concepts, and on learning from a single extended experiment. The learning is directed towards construction of signicant long-lived, large-scale multimedia systems, as opposed to construction of throwaway examples. A number of observations helped to shape the course: Multimedia systems are complex systems and integration of individual system components is a non-trivial task. Students mostly bring knowledge and experience from individual areas such as operating system, audio/video processing, networking, programming languages and/or performance analysis. Thus, our course should provide bridges and glues between these areas as well as teach new concepts where traditional concepts do not apply. Due to the complexity of the multimedia systems design and implementation software engineering techniques must be applied. Signicant software engineering tasks have a long lifetime, characterized by a design phase, an implementation phase, and a long maintenance phase. In real systems, the maintenance phase accounts for most of the money spend, and thus there is typically signicant eort spent in the design phase to ease maintenance. One diculty with long-lived systems is that environments change and new features are required. Thus, one must design for maintenance, coupled with the notion of software reuse. A course should structure assignments in such a way that previous work should be reused in phases. At each phase, the previous code is used, or the instructor's code is used (necessitating reading and understanding a system which is more complex), as a platform. Due to the complexity of multimedia systems, design and testing strategies must be introduced. The students must understand the trade-os between their design choice and the impact on the performance of the system. In many cases, design activities are independent of implementation, but all implementations request testing. The choices of test cases, and the choice of testers is crucial to eective testing. Due to the complexity of multimedia systems a team builds the system to shorten the design, development and testing phases. For team communication documentation is essential because many involved in the design and engineering of the system do not want to read the precise statement of problem solution embodied in the code in order to obtain adequate understanding for their role. They want to understand precisely only the interfaces required for performance of their own tasks. The documentation among the team members can take the following form: embedded commentary, associated text les in form of Latex, pointers to relevant literature included in the program text. All these forms contribute to better human understanding because big systems need more than a few people on the same wawelentgh. It is important to read code written by dierent members of a team. Therefore, code must be written in such a way as to be read. Coding standards of interfaces, and style sheets help in program readability. Due to the complexity of multimedia systems a team building the system must work together. Group size, individual skills within the group and adequate group communication are important aspects for the success of the project. The course has accomplished successfully its goals. The students leave the course with a thorough understanding of various areas in multimedia systems, especially their integration aspect. Furthermore, they learn a tool-rich programming environment for building complex audio-visual systems. More important, they have worked on a project of signicant scope, built signicant software application, and understand the group nature of systems building. There are not many multimedia systems courses available currently. There exist several courses which emphasize individual parts of multimedia systems, such as courses on video compression [Smi95], multimedia communications [Aus95, om95], multimedia applications [Ber95], or multimedia databases [Aus95]. Our course similarly to the other courses

3 3 includes the basics of the individual parts of a multimedia system. The major dierence we see is in the integration aspect of the multimedia systems parts and the choice of the project which stresses the importance of the integration (nahrstedt.cs.uiuc.edu:5000/pub/htdocs/home.html and nahrstedt.cs.uiuc.edu:5000/pub/cs397mm.html). The paper is organized as follows: in Section 2 we present a detailed description of course material. Readers not interested in the details are encouraged to use the summary in Table 1 at the end of Section 2. Section 3 discusses the course management issues. Section 4 reports on results and achievements of this course as well as impact and byproducts of this course. 2 Course Detail The course presentation was designed so that covered material would emphasize the integration aspects of the multimedia systems and would properly map to the project design, implementation and testing stages. The lectured material and the project are approached so that they would not become obsolete; the students would get the knowledge and experience with the newest technology, however, would understand the tradeo among the design choices if certain technology is not in place. The students would be constantly working towards both the development of a project and overall understanding of the multimedia system issues, which would serve them well in both this course, and later courses. The following books comprise the reading list: \MULTIMEDIA: Computing, Communications and Applications" [SN95], chosen because it covers the basics of individual parts in multimedia systems, and provides strong integration between them as well. \UNIX Network Programming" [Ste90], chosen because it illustrates use of UNIX networking tools and libraries with realistic examples. "An Introduction to TCL/TK" [Ous94], chosen because it teaches use of a programming language TCL/TK to develop fast complex user interfaces. In addition, the following books and documentations are recommended reading for students unfamiliar with some operating and networking system concepts \Operating System Concepts" [SG94], \Computer Networks" [Tan88]. To work on the multimedia programming project \Video Development Environment" and \Audio Development Toolkit" reference guides [HP95, HP92] are provided. In subsection 2.1 to 2.7 we present the assignments that were given and their intended role in the student's experience. All assignments were specied in form of a design document. 2.1 Project Design The rst assignment towards building the multimedia VCR system was to provide a high-level specication and design document of a digital VCR. The students got from the instructor a high level system architecture specication as shown in Figure 1. It in- UI Client IPC Scheduler Sync TCP/IP UDP/IP Server Scheduler Figure 1: High-level Architecture of the VCR System dicates that the nal version of the built system will consist of client and server end-points. The server side will operate (store/retrieve) on one video/audio le (movie clip). The client side will include the user interface with appropriate buttons for initiating functions PLAY, RECORD, FAST FORWARD, REWIND, STOP, and PAUSE. The user interface will be a separate process communicating through InterProcess Communication (IPC) mechanisms with the main process called Scheduler at the client side. 2.2 Audio and Video Basic Functionalities Since the students were not expected to be familiar with digital audio and video, this assignment gave them the opportunity to start to work with audio and video devices. Using the manuals for au-

4 4 dio and video API (Application Programming Interfaces), they were asked to implement a program vcr which takes arguments from a UNIX command line. The arguments are function, type, length, le. The function argument represents the `vcr' functional values such as PLAY, RECORD, FAST FOR- WARD or REWIND, type species media types such as the audio or video type, length species number of frames, which determines how many seconds the student will record/play a audio-visual clip, le includes the le name such as le.au (audio le) or le.mjpg (motion JPEG le). An example of such a UNIX command line is vcr RECORD audio 5 file.au which means that the program should read from the audio input device for 5 seconds and write the audio data to the local le le.au. 2.3 Audio/Video Scheduling Until now the students treated the processing of audio/video information independently. However, when playing a movie, audio and video information must play concurrently. If both media types share the same processor, which we assume, they must be scheduled together in a careful manner. Therefore, the following assignment directed the students to think about CPU resource their audio and video streams consume. The students were required to implement (1) admission control for CPU allocation 1 to check if there is enough CPU bandwidth available and (2) rate-monotonic scheduler which schedules audio and video tasks together. The students reused and modied the function vcr further. An example of the extended functionality vcr PLAY 5 file.au file.mjpg indicates the tasks in this assignment. The program should provide admission control of audio/video PLAY tasks, specication of a feasible schedule for PLAY functionality, retrieval of audio/video samples and frames from the le.au, le.mjpg and write them to audio headphone device, and display on the screen according to the rate-monotonic schedule for duration of 5 time units. 1 This means to perform a schedulability test for ratemonotonic scheduling [LL73]. Also note that in order to go through the schedulability test, the students need to measure the processing times (e) of the write/read audio and video tasks processing samples/frames and store them somewhere so that the admission service nds the information for admission. 2.4 Client/Server Multimedia Communication At this point of the multimedia system (vcr) design, the students became familiar with local processing of the digital audio and video information. However, in current distributed computer environment, few of the multimedia systems operate locally due to large size of multimedia information. Digital audio and video information is and will be stored on video servers, hence the students need to learn about client and server multimedia communication. This goal was achieved in the client/server multimedia communication assignment. The vcr program was extended and the high-end video/audio devices separated from the disk device through a local area network. The client side of the vcr program included ratemonotonic scheduler with admission, implemented in previous assignment, and processed information coming to/from audio microphone/headphone, video parallax board /display [PG95] and the network. The server side of the vcr program on a dierent machine scheduled tasks according to the rate-monotonic scheduler and processed information coming from/to network and disk. The multimedia call between the client and the server vcr programs had several network connections. One connection (control connection) carried the control information between the client and the server (separation principle of control and transfer functions in Broadband ISDN architecture)[sn95]. The second connection (transfer connection), from client to server, carried audio/video during recording. The third connection (transfer connection), from the server to the client, carried audio/video during playback. For implementation of the control connection the students used the TCP/IP protocol, for the transfer connections the students had an option to use either a UDP/IP or TCP/IP protocols. Taking one of the design choices they had to understand the tradeos of their decision. 2.5 Lip Synchronization At this point of the vcr multimedia system design, the students realized that the network introduced unpredictable delays and the audio/video information for PLAY function may have arrived having large jitter 2 2 Jitter measures the variance of dierences between intermediate arrivals of packets belonging to the same stream.

5 5 and skew 3 delays which contributed to the out-of-sync situation between audio and video information. The students improved the out-of-sync situation by synchronizing audio with video during PLAY function. To achieve this they had to take the following steps: 1. During the RECORD function at the client side they captured the relation between the audio and video frames. For example, Audio sample 1 <=> Video Frames All these information created a synchronization information. 2. After they captured the synchronization information during the RECORD function, they sent it to the server and stored it in a separate le. 2.6 User Interface for Multimedia Applications The user-friendly access to the vcr program in form of a user interface was part of the multimedia system design. Hence, the students were asked to implement user interface, which consists of buttons STOP, PAUSE, PLAY, RECORD, REWIND, FAST- FORWARD, using TCL/TK [Ous94] and eld for text input of the movie name. An example of a user interface is shown in Figure 2. MOVIE NAME Digital VCR System - Graphical User Interface 3. During the PLAY function they utilized the synchronization information by retrieval and display operations. During retrieval, the synchronization information helped to retrieve information which belong together. During display, the synchronization information was made available to the play-audio and display-video threads, so that the group belonging together was played in one particular interval. 4. During the PLAY function the network introduced unpredictable delays and jitters into the audio/video transmission which made the synchronization during the display very dicult at the client side. One possibility to work around this problem was to use smoothing buers at the client side and adaptive feedback. Students introduced between the receive threads and display threads a ring buer. The students learn about pointer management to control overow and starvation of the smoothing buers. For resolving both critical situations, they used adaptive feedback sent from the client to the server to decrease the sending rate if receiving was faster than displaying/playing video/audio or to increase the sending rate if receiving was slower than displaying/playing g video/audio information. 3 Skew measures the dierence between intermediate arrivals of correlated packets belonging to two dierent streams. RECORD PLAY PAUSE EXIT STOP REWIND Figure 2: Possible Graphical User Interface of the VCR System This assignment emphasized the user-friendly design and consistent implementation of the buttons representing a nite state machine. Especially, the students took into account what knowledge a user brings about buttons and their underlying functionality from the analogue TV vcr system environment. 2.7 Integration In the nal assignment, the students integrated the user interface with the underlying vcr system which included lip synchronized client/server multimedia communication. Integration was the hardest part because the individual modules had to t together. As an example of the integration we will show the integrating protocol between the GUI and some underlying `vcr' functionalities for PLAY function. FF

6 6 Segment Description 1. Project Design Design GUI and process structure 2. Multimedia `record', `play' Functions `rewind', `fast forward' 3. Multimedia CPU admission Scheduling and RM scheduler 4. Client/Server Client/server Communication protocols for audio/video 5. Lip Synchronization Synchronization structures, and streams 6. User Interface User-friendly GUI 7. Integration Integrate client/server communication with GUI Table 1: Summary of Course Phases When user clicks on the PLAY button, the GUI process sends a message to the main process through IPC. The main process does all the functions between the client and server to establish a multimedia call for PLAY and send/play movie in synchronized fashion. The students had to be aware that the scheduler at the client side should also run a control task which will check the IPC for incoming user requests. For example, the user might press the PAUSE button or STOP button during playback. In this case the control task should get the message and pause/stop the client threads which receive/play movie data as well as send a control message to the server to pause/stop the server tasks to retrieve/send movie data. 2.8 Overview Table 1 gives a summary of the course phases. All phases are group eorts. The gure 3 shows the building blocks of the project and the re-usability between implementation phases. 3 Discussion of the Course There are several components we see in this type of a course, namely (1) learning the state of the art in multimedia systems area, (2) experiments, (3) replication of experiments, and (4) observation and deduction. The course met for two lectures per week. There were also interactive lab session meetings with the instructor and the teaching assistant at least twice a week either during oce hours or arranged times in Figure 3: Reuse between implementation phases areas with terminals. The lecture material emphasized newest mechanisms, algorithms and approaches - the state of the art - in multimedia system area. The machine problem assignments as described in Section 2 provided a broad range for experimentation. Student experimentation was of three types. First, given that the students were working with a digital audio and video, they could apply and utilize in `reverse engineering' some of the existing multimedia software. The deduction and observations from these experiments were incorporated into the design of the student projects. Students were enthusiastic about experimenting especially because they could see and hear results of their experiments. Second, the students experimented with new concepts by writing smaller programs and gradually building up a new application. Each assignment was designed so that the students could clearly see and hear if their task was accomplished. Third, the students experimented with design choices and trade-o decisions for multimedia systems. Each assignment left enough freedom for the group to make their own decision on data structures, and basic algorithms for audio and video processing and communication. For example, the students could decide if they want to send video and audio over separate connections or multiplex them into one connection. Experimental data was replicated within a group for several reasons. First, working in groups meant to divide a workload, and at the end integrate individual modules. Hence. uniform experimental data helped to test individual modules as well as the integrated software. Second, common experiments led to a discussion among students in the group, and better group communication which improved debugging and

7 7 testing of the integrated software. We used electronic communication which allowed the student to obtain answers across the week, rather than a few preset times. An online bulletin board mechanism allowed posting of sources, interesting questions, interesting answers, and the details of the assignments. WWW provided help in asynchronous learning. The students could access lecture material on the web in form of a hypermedia document consisting of text (html), gif les, short audio and video clips, taped during lecture, digitized, edited and posted. (viewed with vosaic [CTCL95] software). The html document with text and gif les was available before lectures, digital audio and video were added to the hypermedia document later. The choice of the VCR application had four positive eects: 1. Students knew this application from their homes, hence the functionality of the application and the goals where clear. 2. The students were not forced to complete the design process before they were ready. Their design process consisted of analyzing new features in the context of their existing software, designing appropriate data structures and algorithms, and implementing the features. 3. The completed VCR application allowed the students to become familiar with most of the aspects of digital video and audio processing and communication. Functional details of compression, scheduling and Internet communication taught students not only the individual areas but also the integration aspect when building a complex distributed multimedia application. 4. Experimentation with digital video and audio within their VCR application was a very worthwhile experience. Especially, because they could mostly hear or see how their design performs. Grading of all programming assignments previous to the project completion relied on an even split between code quality and execution testing. The execution testing was done in form of short demonstrations. The nal project was graded wholly by success or failure on a set of individual experiments. One dif- culty which seems to always occur in group work is unequal contributions. This was actually resolved by assigning all group members the same grade for the project. It was interesting that weak members of a group didn't do very well on exams neither, therefore, the overall grade for this group member was lower. Overall, the course had the following principal accomplishments: The student developed a non-trivial multimedia application, consisting of both techniques and developed skills with digital audio and video. The focus on one signicant project brings out the point of integration, which is so important in distributed multimedia applications. Forcing integration of new features with previous work also demands that attention be paid to design. Of course, building on previous work shows the value of re-use as illustrated in Figure 3. The course is a system course which brings, similarly to operating systems course, together concepts, approaches, algorithms and structures with real implementation and experimentation on real application. 4 Conclusion I hear and I forget, I see and I remember, I do and I understand. (Chinese Proverb) We believe that the construction of signicant multimedia systems is a necessary part of the multimedia education in Computer Science. While the impact of education is dicult to evaluate, we will attempt a brief discussion. Did the course fulll its goals? Discussions with instructors of more advanced system courses in the CS curriculum and with advisors of students per-suing multimedia system research have noted that students from `Multimedia Systems Design' class perform better than those who had not taken the course. Discussions with several companies indicated that students who took this class are well prepared to design new challenging multimedia systems. Some requested the names of top few students. They then recruited them for their company. Are the graduates satised? Several students dropped the course due to the extensive programming required. However, of the 36 graduates last semester, several requested recommendation for industrial positions, some students extended

8 8 their project and their knowledge in this area towards master thesis. Several students continue towards PhD in the area of multimedia systems. [Smi95] B. Smith. Multimedia systems. 95/CS631, Fall References [Aus95] University of Texas Austin. Multimedia communication and databases. Course; [Ste90] [Ber95] University of California Berkeley. Multimedia systems and applications. Course; Fall [CTCL95] Z. Chen, S-M. Tan, R.H. Campbell, and Y. Li. Real Time Video and Audio in the World Wide Web. In WWW 95, December [SN95] R. Steinmetz and K. Nahrstedt. Multimedia:Computing, Communications, and Applications. Prentice Hall, Inc., W. R. Stevens. UNIX Network Programming. Prentice Hall, [Tan88] A. S. Tanenbaum. Computer Networks. Prentice-Hall, Englewood Clis, NJ, 2 edition, [HP92] [HP95] Corporation HP. Using the Audio Application Program Interface. Hewlett Packard Corporation, September Corporation HP. Video Development Environemnt. Hewlett Packard Corporation, [LL73] C. L. Liu and J. W. Layland. Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment. Journal of the ACM, 20(1):46{61, January [om95] University of Massachussetts. Multimedia networking. Course; [Ous94] J.K. Ousterhout. An Introduction to TCL/TK. Addison-Wesley Publishing Inc., [PG95] Inc. Parallax Graphics. Video Development Environment, Reference Guide for Sun Solaris, HP/UX and IBM AIX. Parallax Graphics, [SB95] M. Swaord and D. Brown. Mallard. September [SG94] A. Silberschatz and P.B. Galvin. Operating System Concepts. Addison-Wesley, 1994.

C H A P T E R Introduction

C H A P T E R Introduction C H A P T E R 1 Introduction M ultimedia is probably one of the most overused terms of the 90s (for example, see [Sch97]). The field is at the crossroads of several major industries: computing, telecommunications,

More information

Adaptive Methods for Distributed Video Presentation. Oregon Graduate Institute of Science and Technology. fcrispin, scen, walpole,

Adaptive Methods for Distributed Video Presentation. Oregon Graduate Institute of Science and Technology. fcrispin, scen, walpole, Adaptive Methods for Distributed Video Presentation Crispin Cowan, Shanwei Cen, Jonathan Walpole, and Calton Pu Department of Computer Science and Engineering Oregon Graduate Institute of Science and Technology

More information

Frank Miller, George Apostolopoulos, and Satish Tripathi. University of Maryland. College Park, MD ffwmiller, georgeap,

Frank Miller, George Apostolopoulos, and Satish Tripathi. University of Maryland. College Park, MD ffwmiller, georgeap, Simple Input/Output Streaming in the Operating System Frank Miller, George Apostolopoulos, and Satish Tripathi Mobile Computing and Multimedia Laboratory Department of Computer Science University of Maryland

More information

Dynamic Multi-Path Communication for Video Trac. Hao-hua Chu, Klara Nahrstedt. Department of Computer Science. University of Illinois

Dynamic Multi-Path Communication for Video Trac. Hao-hua Chu, Klara Nahrstedt. Department of Computer Science. University of Illinois Dynamic Multi-Path Communication for Video Trac Hao-hua Chu, Klara Nahrstedt Department of Computer Science University of Illinois h-chu3@cs.uiuc.edu, klara@cs.uiuc.edu Abstract Video-on-Demand applications

More information

Multimedia Applications Require Adaptive CPU Scheduling. Veronica Baiceanu, Crispin Cowan, Dylan McNamee, Calton Pu, and Jonathan Walpole

Multimedia Applications Require Adaptive CPU Scheduling. Veronica Baiceanu, Crispin Cowan, Dylan McNamee, Calton Pu, and Jonathan Walpole Multimedia Applications Require Adaptive CPU Scheduling Veronica Baiceanu, Crispin Cowan, Dylan McNamee, Calton Pu, and Jonathan Walpole Department of Computer Science and Engineering Oregon Graduate Institute

More information

Computer Networks IT321

Computer Networks IT321 Computer Networks IT321 CS Program 3 rd Year (2 nd Semester) Page 1 Assiut University Faculty of Computers & Information Computer Science Department Quality Assurance Unit Computer Networks Course Specifications

More information

Operating Systems Projects Built on a Simple Hardware Simulator

Operating Systems Projects Built on a Simple Hardware Simulator Operating Systems Projects Built on a Simple Hardware Simulator John Dickinson Department of Computer Science University of Idaho Moscow, ID 83844-1010 johnd@cs.uidaho.edu Abstract Effective teaching of

More information

Server 1 Server 2 CPU. mem I/O. allocate rec n read elem. n*47.0. n*20.0. select. n*1.0. write elem. n*26.5 send. n*

Server 1 Server 2 CPU. mem I/O. allocate rec n read elem. n*47.0. n*20.0. select. n*1.0. write elem. n*26.5 send. n* Information Needs in Performance Analysis of Telecommunication Software a Case Study Vesa Hirvisalo Esko Nuutila Helsinki University of Technology Laboratory of Information Processing Science Otakaari

More information

A Java-based Course in Human-Computer Interaction. Eileen Kraemer. The University of Georgia. Athens, GA interface.

A Java-based Course in Human-Computer Interaction. Eileen Kraemer. The University of Georgia. Athens, GA interface. A Java-based Course in Human-Computer Interaction Eileen Kraemer Computer Science Department The University of Georgia Athens, GA 30602 Abstract The ACM/SIGCHI proposed curriculum for Human-Computer Interaction

More information

Textbook Charles Petzold, Programming Windows, 5th edition, Microsoft Press. References - other textbooks or materials none

Textbook Charles Petzold, Programming Windows, 5th edition, Microsoft Press. References - other textbooks or materials none CS351 Systems Programming Last Updated - 03/01/02 Course Manager Dr. Phil Dickens, Assistant Professor 3 credit hours; required for CS & CPE; 100 min. lecture & 100 min. lab each week Current Catalog Description

More information

Course and Unix Intro

Course and Unix Intro Course and Unix Intro Comp-206 : Introduction to Software Systems Lecture 1 Alexandre Denault Computer Science McGill University Fall 2006 Instructor Alexandre Denault Graduate student, working in the

More information

Multimedia Systems Giorgio Leonardi A.A Lecture 1: General information and Introduction

Multimedia Systems Giorgio Leonardi A.A Lecture 1: General information and Introduction Multimedia Systems Giorgio Leonardi A.A.2014-2015 Lecture 1: General information and Introduction Overview Course page (D.I.R.): https://disit.dir.unipmn.it/course/view.php?id=639 Consulting: Office hours

More information

T H. Runable. Request. Priority Inversion. Exit. Runable. Request. Reply. For T L. For T. Reply. Exit. Request. Runable. Exit. Runable. Reply.

T H. Runable. Request. Priority Inversion. Exit. Runable. Request. Reply. For T L. For T. Reply. Exit. Request. Runable. Exit. Runable. Reply. Experience with Real-Time Mach for Writing Continuous Media Applications and Servers Tatsuo Nakajima Hiroshi Tezuka Japan Advanced Institute of Science and Technology Abstract This paper describes the

More information

THE IMPACT OF E-COMMERCE ON DEVELOPING A COURSE IN OPERATING SYSTEMS: AN INTERPRETIVE STUDY

THE IMPACT OF E-COMMERCE ON DEVELOPING A COURSE IN OPERATING SYSTEMS: AN INTERPRETIVE STUDY THE IMPACT OF E-COMMERCE ON DEVELOPING A COURSE IN OPERATING SYSTEMS: AN INTERPRETIVE STUDY Reggie Davidrajuh, Stavanger University College, Norway, reggie.davidrajuh@tn.his.no ABSTRACT This paper presents

More information

On the Use of Multicast Delivery to Provide. a Scalable and Interactive Video-on-Demand Service. Kevin C. Almeroth. Mostafa H.

On the Use of Multicast Delivery to Provide. a Scalable and Interactive Video-on-Demand Service. Kevin C. Almeroth. Mostafa H. On the Use of Multicast Delivery to Provide a Scalable and Interactive Video-on-Demand Service Kevin C. Almeroth Mostafa H. Ammar Networking and Telecommunications Group College of Computing Georgia Institute

More information

Academic Course Description

Academic Course Description BEC003 Integrated Services Digital Network Academic Course Description BHARATH UNIVERSITY Faculty of Engineering and Technology Department of Electronics and Communication Engineering BEC002INTEGRATED

More information

Academic Course Description

Academic Course Description BEC601 - COMPUTER COMMUNICATION AND NETWORKS Course (catalog) description Academic Course Description BHARATH UNIVERSITY Faculty of Engineering and Technology Department of Electronics and Communication

More information

Book Proposal. Understanding The Linux Virtual Memory Manager. Mel Gorman. July 9, 2007

Book Proposal. Understanding The Linux Virtual Memory Manager. Mel Gorman. July 9, 2007 Book Proposal Understanding The Linux Virtual Memory Manager Mel Gorman July 9, 2007 CONTENTS 2 Contents 1 Original Proposal 3 2 Whats New Section 8 3 Companion CD Enhancements 9 4 Detailed Schedule 10

More information

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE (NON-THESIS OPTION)

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE (NON-THESIS OPTION) Master of Science (M.S.) Major in Computer Science (Non-thesis Option) 1 MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE (NON-THESIS OPTION) Major Program The Master of Science (M.S.) degree with a

More information

EEC-484/584 Computer Networks

EEC-484/584 Computer Networks EEC-484/584 Computer Networks Lecture 1 Wenbing Zhao wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) What is Computer Network? A group of

More information

Part A: Course Outline

Part A: Course Outline University of Macau Faculty of Science and Technology Course Title: Department of Electrical and Computer Engineering Part A: Course Outline Communication System and Data Network Course Code: ELEC460 Year

More information

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus 1. Course Objectives Welcome to MET CS342 Data Structures with Java. The intent of this

More information

Multimedia Systems. Lehrstuhl für Informatik IV RWTH Aachen. Prof. Dr. Otto Spaniol Dr. rer. nat. Dirk Thißen

Multimedia Systems. Lehrstuhl für Informatik IV RWTH Aachen. Prof. Dr. Otto Spaniol Dr. rer. nat. Dirk Thißen Multimedia Systems Lehrstuhl für Informatik IV RWTH Aachen Prof. Dr. Otto Spaniol Dr. rer. nat. Dirk Thißen Page 1 Organization Lehrstuhl für Informatik 4 Lecture Lecture takes place on Thursday, 10:00

More information

Presenter. Xiaolong Li, Assistant Professor Department of Industrial and Engineering Technology Morehead State University

Presenter. Xiaolong Li, Assistant Professor Department of Industrial and Engineering Technology Morehead State University DEVELOPMENT AND APPLICATION OF A NEW CURRICULUM FOR COMPUTER NETWORKING Presenter Xiaolong Li, Assistant Professor Department of Industrial and Engineering Technology Morehead State University Gabriel

More information

SOFTWARE ENGINEERING

SOFTWARE ENGINEERING SOFTWARE ENGINEERING INTRODUCTION TO SOFTWARE ENGINEERING. COURSE STRUCTURE AND REQUIREMENTS Saulius Ragaišis saulius.ragaisis@mif.vu.lt WHAT IS SOFTWARE ENGINEERING? First definition Software engineering

More information

Masters in Advanced Computer Science

Masters in Advanced Computer Science Masters in Advanced Computer Science Programme Requirements Taught Element, and PG Diploma in Advanced Computer Science: 120 credits: IS5101 CS5001 up to 30 credits from CS4100 - CS4450, subject to appropriate

More information

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter Lecture Topics Today: Operating System Overview (Stallings, chapter 2.1-2.4, 2.8-2.10) Next: Processes (Stallings, chapter 3.1-3.6) 1 Announcements Consulting hours posted Self-Study Exercise #3 posted

More information

Practical Experiments with KivaNS: A virtual Laboratory for Simulating IP Routing in Computer Networks Subjects

Practical Experiments with KivaNS: A virtual Laboratory for Simulating IP Routing in Computer Networks Subjects Practical Experiments with KivaNS: A virtual Laboratory for Simulating IP Routing in Computer Networks Subjects F. A. Candelas Herías * and P. Gil Vázquez AUROVA, Department of Physics, Systems Engineering

More information

2. COURSE DESIGNATION: 3. COURSE DESCRIPTIONS:

2. COURSE DESIGNATION: 3. COURSE DESCRIPTIONS: College of San Mateo Official Course Outline 1. COURSE ID: CIS 278 TITLE: (CS1) Programming Methods: C++ C-ID: COMP 122 Units: 4.0 units Hours/Semester: 48.0-54.0 Lecture hours; 48.0-54.0 Lab hours; and

More information

Preface A Brief History Pilot Test Results

Preface A Brief History Pilot Test Results Preface A Brief History In Fall, 2005, Wanda Dann and Steve Cooper, originators of the Alice approach for introductory programming (in collaboration with Randy Pausch), met with Barb Ericson and Mark Guzdial,

More information

Documentation of SAP Student Lifecycle Management (IS-HER- CM) BS 7 (EHP 4)

Documentation of SAP Student Lifecycle Management (IS-HER- CM) BS 7 (EHP 4) Documentation of SAP Student Lifecycle Management (IS-HER- CM) BS 7 (EHP 4) Applies to: Student Lifecycle Management EHP4 For more information, visit the Higher Education & Research homepage. Summary This

More information

IP LOOK-UP WITH TIME OR MEMORY GUARANTEE AND LOW UPDATE TIME 1

IP LOOK-UP WITH TIME OR MEMORY GUARANTEE AND LOW UPDATE TIME 1 2005 IEEE International Symposium on Signal Processing and Information Technology IP LOOK-UP WITH TIME OR MEMORY GUARANTEE AND LOW UPDATE TIME 1 G.T. Kousiouris and D.N. Serpanos Dept. of Electrical and

More information

SOFTWARE ENGINEERING

SOFTWARE ENGINEERING SOFTWARE ENGINEERING INTRODUCTION TO SOFTWARE ENGINEERING. COURSE STRUCTURE AND REQUIREMENTS Saulius Ragaišis saulius.ragaisis@mif.vu.lt WHAT IS SOFTWARE ENGINEERING? First definition Software engineering

More information

Operating Systems CMPSC 473. Introduction January 15, Lecture 1 Instructor: Trent Jaeger

Operating Systems CMPSC 473. Introduction January 15, Lecture 1 Instructor: Trent Jaeger Operating Systems CMPSC 473 Introduction January 15, 2008 - Lecture 1 Instructor: Trent Jaeger About Me Trent Jaeger (PhD, University of Michigan) Associate Professor, CSE -- after 9 years at IBM Research

More information

Philadelphia University Faculty of Information Technology Department of Computer Science --- Semester, 2007/2008. Course Syllabus

Philadelphia University Faculty of Information Technology Department of Computer Science --- Semester, 2007/2008. Course Syllabus Philadelphia University Faculty of Information Technology Department of Computer Science --- Semester, 2007/2008 Course Syllabus Course Title: Advanced Databases Course Level: 4 Lecture Time: Course code:

More information

Data Structures And Other Objects Using Java Download Free (EPUB, PDF)

Data Structures And Other Objects Using Java Download Free (EPUB, PDF) Data Structures And Other Objects Using Java Download Free (EPUB, PDF) This is the ebook of the printed book and may not include any media, website access codes, or print supplements that may come packaged

More information

SAP Help for Student Lifecycle Management

SAP Help for Student Lifecycle Management SAP Help for Student Lifecycle Management Applies to: Student Lifecycle Management EHP3 Summary This document describes the features and functions delivered with Student Lifecycle Management EHP3. Author(s):

More information

Quality Code for Higher Education. Application for Validation Part 1: Programme/Stage Specification Pro Forma

Quality Code for Higher Education. Application for Validation Part 1: Programme/Stage Specification Pro Forma Quality Code for Higher Education Application for Validation Part 1: Programme/Stage Specification Pro Forma INTRODUCTION Identifiers (e.g. a, b, c etc) should be used throughout this document to indicate

More information

Academic Course Description

Academic Course Description Academic Course Description SRM University Faculty of Engineering and Technology Department of Electronics and Communication Engineering EC1027 COMPUTER COMMUNICATION Seventh Semester, 2016-17 (odd semester)

More information

Notes to Instructors Concerning the BLITZ Projects

Notes to Instructors Concerning the BLITZ Projects Overview Notes to Instructors Concerning the BLITZ Projects Harry H. Porter III, Ph.D. Department of Computer Science Portland State University April 14, 2006 Revised: September 17, 2007 The BLITZ System

More information

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2017/18

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2017/18 City University of Hong Kong offered by Department of Computer Science with effect from Semester A 2017/18 Part I Course Overview Course Title: Computer Networks Course Code: CS3201 Course Duration: 1

More information

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information CSC 4103 - Operating Systems Fall 2009 Lecture - I Introduction Tevfik Ko!ar Louisiana State University August 25 th, 2009 1 Contact Information Instructor: Prof. Tevfik Kosar Office: 292 Coates (also

More information

ITM DEVELOPMENT (ITMD)

ITM DEVELOPMENT (ITMD) ITM Development (ITMD) 1 ITM DEVELOPMENT (ITMD) ITMD 361 Fundamentals of Web Development This course will cover the creation of Web pages and sites using HTML, CSS, Javascript, jquery, and graphical applications

More information

Ursuline College Accelerated Program

Ursuline College Accelerated Program Ursuline College Accelerated Program CRITICAL INFORMATION! DO NOT SKIP THIS LINK BELOW... BEFORE PROCEEDING TO READ THE UCAP MODULE, YOU ARE EXPECTED TO READ AND ADHERE TO ALL UCAP POLICY INFORMATION CONTAINED

More information

CS 378 (Spring 2003) Linux Kernel Programming. Yongguang Zhang. Copyright 2003, Yongguang Zhang

CS 378 (Spring 2003) Linux Kernel Programming. Yongguang Zhang. Copyright 2003, Yongguang Zhang Department of Computer Sciences THE UNIVERSITY OF TEXAS AT AUSTIN CS 378 (Spring 2003) Linux Kernel Programming Yongguang Zhang (ygz@cs.utexas.edu) Copyright 2003, Yongguang Zhang Read Me First Everything

More information

CPSC 5157G Computer Networks

CPSC 5157G Computer Networks CPSC 5157G Computer Networks Instructor Dr. Jianhua Yang Center for Commerce and Technology 28 (706) 565 3520 e mail: yang_jianhua@colstate.edu website: http://csc.colstate.edu/yang/ Office Hours (Fall

More information

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2017/18

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2017/18 City University of Hong Kong offered by Department of Computer Science with effect from Semester A 2017/18 Part I Course Overview Course Title: Database Systems Course Code: CS3402 Course Duration: 1 semester

More information

MPEG Video Audio Player? Shanwei Cen, Calton Pu, Richard Staehli, Crispin Cowan and Jonathan Walpole

MPEG Video Audio Player? Shanwei Cen, Calton Pu, Richard Staehli, Crispin Cowan and Jonathan Walpole A Distributed Real-Time MPEG Video Audio Player? Shanwei Cen, Calton Pu, Richard Staehli, Crispin Cowan and Jonathan Walpole Department of Computer Science and Engineering Oregon Graduate Institute of

More information

Read & Download (PDF Kindle) Data Structures And Other Objects Using Java (4th Edition)

Read & Download (PDF Kindle) Data Structures And Other Objects Using Java (4th Edition) Read & Download (PDF Kindle) Data Structures And Other Objects Using Java (4th Edition) Data Structures and Other Objects Using Java is a gradual, "just-in-time" introduction to Data Structures for a CS2

More information

A Capstone Senior Design Course: Building a Simplified Computer Network

A Capstone Senior Design Course: Building a Simplified Computer Network Session 3232 A Capstone Senior Design Course: Building a Simplified Computer Network John Greco, Ph.D. Department of Electrical and Computer Engineering Lafayette College Easton, PA 18042 Abstract This

More information

Demonstrate web development using appropriate HTML markup tags, elements and attributes.

Demonstrate web development using appropriate HTML markup tags, elements and attributes. Long Title: HTML & Web Design Module Code: H6HTM Credits: 10 NFQ Level: LEVEL 6 Field of Study: Software and applications development and analysis Module Delivered in no programmes Module Coordinator:

More information

Computer Science Department

Computer Science Department California State University, Dominguez Hills Computer Science Department Syllabus CS255 Dynamic Web Programming Dr. Jason Isaac Halasa Office Hours: MW 12:45-2:30 and 3:45-5:30 and by Appointment Office

More information

Introduction to Operating Systems

Introduction to Operating Systems Introduction to Operating Systems Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3052: Introduction to Operating Systems, Fall 2017, Jinkyu Jeong

More information

School of Computing and Information Sciences. Course Title: Mobile Application Development Date: 8/23/10

School of Computing and Information Sciences. Course Title: Mobile Application Development Date: 8/23/10 Course Title: Date: 8/3/10 Course Number: Number of Credits: 3 Subject Area: Mobile Computing Subject Area Coordinator: Kip Irvine email: irvinek@cs.fiu.edu Catalog Description: Design and development

More information

Research Collection. Synchronization issues in distributed applications: definitions, problems, and quality of synchronization.

Research Collection. Synchronization issues in distributed applications: definitions, problems, and quality of synchronization. Research Collection Working Paper Synchronization issues in distributed applications: definitions, problems, and quality of synchronization Author(s): Class, Christina Publication Date: 1997 Permanent

More information

6. Correspondence relationship between Educational goals and Course goals

6. Correspondence relationship between Educational goals and Course goals 1. Course Title (Course Code) Fundamentals of Information Networks (2201) 2. Instructor Teruaki YOKOYAMA 3. Term Fall 2 4. Outline and Objectives In this course the students study the technologies for

More information

Computer Information Systems

Computer Information Systems Computer Information Systems Credentials Information Technology Foundation Skills Certificate Cisco Networking Academy Skills Certificate Networking Specialist Certificate Networking Specialist AAS Degree

More information

FOUNDATIONS OF INFORMATION SYSTEMS MIS 2749 COURSE SYLLABUS Fall, Course Title and Description

FOUNDATIONS OF INFORMATION SYSTEMS MIS 2749 COURSE SYLLABUS Fall, Course Title and Description FOUNDATIONS OF INFORMATION SYSTEMS MIS 2749 COURSE SYLLABUS Fall, 2013 Instructor s Name: Vicki Robertson E-mail: vrobrtsn@memphis.edu Course Title and Description Foundations of Information Systems. (3

More information

MCOM 6336 Digital Media Spring 2014

MCOM 6336 Digital Media Spring 2014 MCOM 6336 Digital Media Spring 2014 Dr. Kelly Kaufhold Media & Communication MCOM 405 (806) 834-1766 Office Hours: Tu / Th: 12:30 2 p.m. kelly.kaufhold@ttu.edu W: 1 2 p.m. and by appointment Class: Tu

More information

The University of Jordan. Accreditation & Quality Assurance Center. COURSE Syllabus

The University of Jordan. Accreditation & Quality Assurance Center. COURSE Syllabus The University of Jordan Accreditation & Quality Assurance Center COURSE Syllabus 1 Course title Computer Networks-1 2 Course number 1931361 Credit hours (theory, practical) 3 3 Contact hours (theory,

More information

TECHNICAL RESEARCH REPORT

TECHNICAL RESEARCH REPORT TECHNICAL RESEARCH REPORT A Resource Reservation Scheme for Synchronized Distributed Multimedia Sessions by W. Zhao, S.K. Tripathi T.R. 97-14 ISR INSTITUTE FOR SYSTEMS RESEARCH Sponsored by the National

More information

FOUR STEPS TO TEACHING C PROGRAMMING

FOUR STEPS TO TEACHING C PROGRAMMING FOUR STEPS TO TEACHING C PROGRAMMING Dan Budny 1, Laura Lund 2, Jeff Vipperman 3 and John L. Patzer II 4 Abstract Our experience with teaching C programming has shown that the students have a problem understanding

More information

Module Syllabus. PHILADELPHIA UNIVERSITY Faculty: Information Technology Department: Applied Computer Science

Module Syllabus. PHILADELPHIA UNIVERSITY Faculty: Information Technology Department: Applied Computer Science Module Syllabus Module Name: Computer Skills (2) for Science Colleges Module Number: 710104 Level: 1 Credit Hours: 3 hours Prerequisite / Co-Requisite: none Lecturer Name: Office Number: Phone: E-mail:

More information

SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN

SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN SUBJECT: (IT 4.1.3) ADVANCED OPERATING SYSTEM CLASS: 4/4 B.Tech. I SEMESTER, A.Y.2017-18 INSTRUCTOR: CHALLA

More information

Systems I: Programming Abstractions

Systems I: Programming Abstractions Systems I: Programming Abstractions Course Philosophy: The goal of this course is to help students become facile with foundational concepts in programming, including experience with algorithmic problem

More information

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics Zarqa University Faculty: Information Technology Department: Computer Science Course title: Programming LAB 1 (1501111) Instructor: Lecture s time: Semester: Office Hours: Course description: This introductory

More information

March 6, 2000 Applications that process and/or transfer Continuous Media (audio and video) streams become

March 6, 2000 Applications that process and/or transfer Continuous Media (audio and video) streams become Increasing the Clock Interrupt Frequency for Better Support of Real-Time Applications Constantinos Dovrolis Parameswaran Ramanathan Department of Electrical and Computer Engineering University of Wisconsin-Madison

More information

UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 3550 Communication Networks

UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 3550 Communication Networks UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 3550 Communication Networks 1 Course Description Information 1.1 Catalog description This course is designed to bring students up to the state of the art

More information

Computer Information Systems (CIS) CIS 105 Current Operating Systems/Security CIS 101 Introduction to Computers

Computer Information Systems (CIS) CIS 105 Current Operating Systems/Security CIS 101 Introduction to Computers Computer Information Systems (CIS) CIS 101 Introduction to Computers This course provides an overview of the computing field and its typical applications. Key terminology and components of computer hardware,

More information

A THREAD IMPLEMENTATION PROJECT SUPPORTING AN OPERATING SYSTEMS COURSE

A THREAD IMPLEMENTATION PROJECT SUPPORTING AN OPERATING SYSTEMS COURSE A THREAD IMPLEMENTATION PROJECT SUPPORTING AN OPERATING SYSTEMS COURSE Tom Bennet Department of Computer Science Mississippi College Clinton, MS 39058 601 924 6622 bennet@mc.edu ABSTRACT This paper describes

More information

Storage System. Distributor. Network. Drive. Drive. Storage System. Controller. Controller. Disk. Disk

Storage System. Distributor. Network. Drive. Drive. Storage System. Controller. Controller. Disk. Disk HRaid: a Flexible Storage-system Simulator Toni Cortes Jesus Labarta Universitat Politecnica de Catalunya - Barcelona ftoni, jesusg@ac.upc.es - http://www.ac.upc.es/hpc Abstract Clusters of workstations

More information

Introduction to Computer Systems

Introduction to Computer Systems Introduction to Computer Systems Syllabus Web Page http://www.cs.northwestern.edu/~pdinda/icsclass Instructor Peter A. Dinda 1890 Maple Avenue, Room 338 847-467-7859 pdinda@cs.northwestern.edu Office hours:

More information

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.4a, 1.1.4b, 1.1.4c, 1.1.5, WAN Technologies All None None None

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.4a, 1.1.4b, 1.1.4c, 1.1.5, WAN Technologies All None None None CCNA 4 Plan for Academy Student Success (PASS) CCNA 4 v3.1 Instructional Update # 2006-1 This Instructional Update has been issued to provide guidance to the Academy instructors on the flexibility that

More information

Establishment of new Department of Informatics, UNIRI and experiences in teaching SE course

Establishment of new Department of Informatics, UNIRI and experiences in teaching SE course Establishment of new Department of Informatics, UNIRI and experiences in teaching SE course Nataša Hoić-Božić, natasah@inf.uniri.hr Sanja Čandrlić, sanjac@inf.uniri.hr Odjel za informatiku, Sveučilište

More information

Software Reliability and Reusability CS614

Software Reliability and Reusability CS614 Software Reliability and Reusability CS614 Assiut University Faculty of Computers & Information Quality Assurance Unit Software Reliability and Reusability Course Specifications2011-2012 Relevant program

More information

About Me. Office Hours: Tu 4-5, W 1-2, or by appointment Office: 346A IST Bldg

About Me. Office Hours: Tu 4-5, W 1-2, or by appointment Office: 346A IST Bldg 1 About Me Trent Jaeger (PhD, University of Michigan) Associate Professor, CSE -- after 9 years at IBM Research Research: Operating System Security Example Projects L4 Microkernel -- minimal, high performance

More information

CS510 Operating System Foundations. Jonathan Walpole

CS510 Operating System Foundations. Jonathan Walpole CS510 Operating System Foundations Jonathan Walpole Course Overview Who am I? Jonathan Walpole Professor at PSU since 2004, OGI 1989 2004 Research Interests: Operating System Design, Parallel and Distributed

More information

NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss

NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss General The Computer Architecture section SFDV2005 is now complete, and today we begin on NETW3005 Operating Systems. Lecturers: Give

More information

CPS 210: Operating Systems

CPS 210: Operating Systems CPS 210: Operating Systems Operating Systems: The Big Picture The operating system (OS) is the interface between user applications and the hardware. User Applications Operating System virtual machine interface

More information

RESPONSIVENESS IN A VIDEO. College Station, TX In this paper, we will address the problem of designing an interactive video server

RESPONSIVENESS IN A VIDEO. College Station, TX In this paper, we will address the problem of designing an interactive video server 1 IMPROVING THE INTERACTIVE RESPONSIVENESS IN A VIDEO SERVER A. L. Narasimha Reddy ABSTRACT Dept. of Elec. Engg. 214 Zachry Texas A & M University College Station, TX 77843-3128 reddy@ee.tamu.edu In this

More information

Masters in Software Engineering

Masters in Software Engineering Masters in Software Engineering Programme Requirements Taught Element, and PG Diploma in Software Engineering: 120 credits: IS5101 CS5001 CS5030 CS5031 CS5032 or CS5033 up to 30 credits from CS4100 - CS4450,

More information

Packet Switched Integrated Service Networks. Colin Parris and Domenico Ferrari. The Tenet Group

Packet Switched Integrated Service Networks. Colin Parris and Domenico Ferrari. The Tenet Group 1 The Dynamic Management of Guaranteed Performance Connections in Packet Switched Integrated Service Networks Colin Parris and Domenico Ferrari The Tenet Group Computer Science Division, University of

More information

Duration of Study and Degree

Duration of Study and Degree Subject-Specific Examination Regulations applicable to the M. Sc. Graduate Programme Master of Neurosciences at the University of Bremen from June 2015 In its session on June 3, 2015, the Faculty Council

More information

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS AUDIO/VIDEO FOR THE WEB WEB 2120

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS AUDIO/VIDEO FOR THE WEB WEB 2120 PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS AUDIO/VIDEO FOR THE WEB WEB 2120 Class Hours: 3.0 Credit Hours: 3.0 Laboratory Hours: 0.0 Date Revised: Fall 03 NOTE: This course is not designed

More information

Concurrency. Glossary

Concurrency. Glossary Glossary atomic Executing as a single unit or block of computation. An atomic section of code is said to have transactional semantics. No intermediate state for the code unit is visible outside of the

More information

School of Computing and Information Sciences

School of Computing and Information Sciences Course Title: Date: April 4, 009 Course Number: COP-45 Number of Credits: 3 Subject Area: Computer Systems Subject Area Coordinator: S. Masoud Sadjadi email: sadjadi@cs.fiu.edu Catalog Description: Unix

More information

CSci 4211: Introduction to Computer Networks. Time: Monday and Wednesday 2:30 to 3:45 pm Location: Smith Hall 231 Fall 2018, 3 Credits

CSci 4211: Introduction to Computer Networks. Time: Monday and Wednesday 2:30 to 3:45 pm Location: Smith Hall 231 Fall 2018, 3 Credits CSci 4211: Introduction to Computer Networks Time: Monday and Wednesday 2:30 to 3:45 pm Location: Smith Hall 231 Fall 2018, 3 Credits 1 Instructor David Hung-Chang Du Email: du@cs.umn.edu Office: Keller

More information

COURSE DESCRIPTION. 4. Preconditions (if necessary) 4.1 Of Curriculum Previous Courses Attended: Operating Systems 4.2 Of Skills

COURSE DESCRIPTION. 4. Preconditions (if necessary) 4.1 Of Curriculum Previous Courses Attended: Operating Systems 4.2 Of Skills COURSE DESCRIPTION 1. Program Information 1.1 University Alexandru Ioan Cuza University of Iaşi 1.2 Faculty Faculty of Computer Science 1.3 Department Computer Science 1.4 Study Domain Computer Science

More information

Electrical and Computer Engineering Technology

Electrical and Computer Engineering Technology ECET 3400 Spring 2012 Data Communications Southern Polytechnic State University Electrical and Computer Engineering Technology Instructor Information Instructor: Dr. Craig A. Chin, Assistant Professor

More information

SWE3004: Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

SWE3004: Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University SWE3004: Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction Schedule 16:30 17:45 (Monday), 13:30 14:45 (Wednesday) Lecture

More information

CSE506: Operating Systems CSE 506: Operating Systems

CSE506: Operating Systems CSE 506: Operating Systems CSE 506: Operating Systems Introduction Today s Lecture Course Overview Course Topics Grading Logistics Academic Integrity Policy Key concepts from Undergrad Operating Systems Course Overview (1/3) Caveat

More information

Network-Adaptive Video Coding and Transmission

Network-Adaptive Video Coding and Transmission Header for SPIE use Network-Adaptive Video Coding and Transmission Kay Sripanidkulchai and Tsuhan Chen Department of Electrical and Computer Engineering, Carnegie Mellon University, Pittsburgh, PA 15213

More information

CSM27 Exercises. Hans Georg Schaathun. November 25, Week In session. 1.2 Weekly Exercises. Security problems brain storming

CSM27 Exercises. Hans Georg Schaathun. November 25, Week In session. 1.2 Weekly Exercises. Security problems brain storming CSM27 Exercises Hans Georg Schaathun November 25, 2008 1 Week 1 1.1 In session Security problems brain storming Classication of brain stormed problems. 1.2 Weekly Exercises 1.2.1 Current Security Problems

More information

Cluster quality 15. Running time 0.7. Distance between estimated and true means Running time [s]

Cluster quality 15. Running time 0.7. Distance between estimated and true means Running time [s] Fast, single-pass K-means algorithms Fredrik Farnstrom Computer Science and Engineering Lund Institute of Technology, Sweden arnstrom@ucsd.edu James Lewis Computer Science and Engineering University of

More information

CTP203 Operating Systems Syllabus

CTP203 Operating Systems Syllabus Course Details Department of Computer Technology & Programming CTP203 Operating Systems Syllabus Course Name: Course Credits: 4 ECTS Credits: 6 Prerequisite: CTP102 (Elementary Data Structures) Semester:

More information

ANDROID APPLICATION DEVELOPMENT COURSE Training Program

ANDROID APPLICATION DEVELOPMENT COURSE Training Program ANDROID APPLICATION DEVELOPMENT COURSE Training Program This Android Application Development Course is a 24 Hours Training Program with Certification. The program is to be developed for Matriculated, Intermediate

More information

Network Architecture I

Network Architecture I Network Architecture I Degree in: Communications Electronic Engineering Telecommunication Systems Engineering Telecommunication Technologies Engineering Telematics Engineering Universidad de Alcalá 2016/17

More information

Using Flex 3 in a Flex 4 World *

Using Flex 3 in a Flex 4 World * OpenStax-CNX module: m34631 1 Using Flex 3 in a Flex 4 World * R.G. (Dick) Baldwin This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract Learn how

More information

UNIVERSITY POLYTECHNIC B.I.T., MESRA, RANCHI. COURSE STRUCTURE (W.E.F Batch Students) (Total Unit 7.0) Sessional Unit Code. Theory Unit Course

UNIVERSITY POLYTECHNIC B.I.T., MESRA, RANCHI. COURSE STRUCTURE (W.E.F Batch Students) (Total Unit 7.0) Sessional Unit Code. Theory Unit Course COURSE STRUCTURE (W.E.F. 2011 Batch Students) (Total Unit 7.0) Course Theory Unit Course Sessional Unit Code Code DCP 5001 Data Communication and 1.0 DCP 5002 Networking Lab. 0.5 Networking DCP 5003 Introduction

More information

CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING

CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING MAJOR: DEGREE: COMPUTER SCIENCE MASTER OF SCIENCE (M.S.) CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING The Department of Computer Science offers a Master of Science

More information