Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Mark A. Holliday is active.

Publication


Featured researches published by Mark A. Holliday.


technical symposium on computer science education | 2002

Teaching computer organization/architecture with limited resources using simulators

Gregory Wolffe; William Yurcik; Hugh Osborne; Mark A. Holliday

As the complexity and variety of computer system hardware increases, its suitability as a pedagogical tool in computer organization/architecture courses diminishes. As a consequence, many instructors are turning to simulators as teaching aids, often using valuable teaching/research time to construct them. Many of these simulators have been made freely available on the Internet, providing a useful and time-saving resource for other instructors. However, finding the right simulator for a particular course or topic can itself be a time-consuming process. The goal of this paper is to provide an easy-to-use survey of free and Internet-accessible computer system simulators as a resource for all instructors of computer organization and computer architecture courses.


IEEE Transactions on Computers | 1994

Performance evaluation of hierarchical ring-based shared memory multiprocessors

Mark A. Holliday; Michael Stumm

Investigates the performance of word-packet, slotted unidirectional ring-based hierarchical direct networks in the context of large-scale shared memory multiprocessors. Slotted unidirectional rings are attractive because their electrical characteristics and simple interfaces allow for fast cycle times and large bandwidths. For large-scale systems, it is necessary to use multiple rings for increased aggregate bandwidth. Hierarchies are attractive because the topology ensures unique paths between nodes, simple node interfaces and simple inter-ring connections. To ensure that a realistic region of the design space is examined, the architecture of the network used in the Hector prototype is adopted as the initial design point. A simulator of that architecture has been developed and validated with measurements from the prototype. The system and workload parameterization reflects conditions expected in the near future. The results of this study shows the importance of system balance on performance. >


technical symposium on computer science education | 2001

Distributed expertise for teaching computer organization & architecture

Lillian N. Cassel; Mark A. Holliday; Deepak Kumar; John Impagliazzo; Kevin Bolding; Murray Pearson; Jim Davies; Gregory Wolffe; William Yurcik

This report presents preliminary results from our project on creating distributed expertise for teaching computer organization & architecture course(s) in the undergraduate computer science curriculum. We present the details of an online survey designed to gather information from faculty on the current state of teaching this course. The survey also tries to identify specific areas of need for creating distributed expertise as reported by various faculty. We also present several resources that have been identified that are available for use by faculty teaching the course(s). This report represents a mid-point of an ongoing two-year study. Following a discussion of the currently identified needs, we discuss ways to address them and conclude the report with a plan of action that will follow in the next phase of the project.


ACM Transactions on Computing Education \/ ACM Journal of Educational Resources in Computing | 2003

Animation of computer networking concepts

Mark A. Holliday

A number of the key concepts in the design of computer networks lend themselves to illustration through animation. Animation can make the main features of these concepts accessible to the beginning undergraduate student as well as to more advanced students. We have identified six of these networking concepts: packet encapsulation; packet fragmentation; error control; media access in Ethernet local-area networks; domain name resolution; and the hypertext transfer protocol. We developed Java applets and accompanying materials to illustrate four of these concepts. The applets serve two roles: one role as a visual representation of different scenarios with respect to the concept in question; the second role as a vehicle for experimentation. We discuss the applets, the sequence of points each applet is designed to convey, and how the user can conduct experiments to further understand the networking concept. For the other two concepts, we show how the student can use free, easily available software to observe how the concept is implemented in the Internet.


integrating technology into computer science education | 1998

Java resources for computer science instruction

Joseph Bergin; Thomas L. Naps; Constance G. Bland; Stephen J. Hartley; Mark A. Holliday; Pamela B. Lawhead; John Lewis; Myles F. McNally; Christopher Nevison; Cheng Ng; George Pothering; Tommi Teräsvirta

The goal of this working group was to collect, evaluate, and foster the development of resources to serve as components of both new and revised traditional courses that emphasize object-oriented software development using Java. These courses could, for example, integrate Internet-based distributed programming, concurrency, database programming, graphics and visualization, human interface design and object-oriented development. They could therefore also be suitable as capstone courses in computer science. The focus of the working group was on tools and techniques, including demonstrations, projects, syllabi, and pedagogical patterns. The working group members are coordinating the development of a Web site (sol.pace.edu/iticse98) devoted to sharing such tools and techniques among educators.


technical symposium on computer science education | 2004

CS1 assessment using memory diagrams

Mark A. Holliday; David R. Luginbuhl

Understanding the execution of an object-oriented program can be a challenge for a student starting a CS1 course. We believe that a type of diagram that we call a memory diagram can aid the student in understanding object-oriented programming and can assist the instructor in assessing the students understanding.Memory diagrams focus on how, in an abstract sense, the memory of the machine changes as the program executes. Though memory diagrams are a simple idea, by careful use of shape and placement, a number of key points about the meaning of a program fragment can be conveyed visually. We have found a correlation between a students ability to construct these diagrams and that students comprehension of object-oriented concepts. We feel that this correlation indicates that memory diagrams can be used as an assessment technique that, in turn, can be used to improve student learning.


technical symposium on computer science education | 2005

A geographically-distributed, assignment-structured undergraduate grid computing course

Mark A. Holliday; Barry Wilkinson; Jeffrey House; Samir Daoud; Clayton Ferner

Grid computing is now mature enough and important enough to be studied as a full course at the undergraduate level for upper-level computer science majors. We have developed such a course, including a set of lecture slides, assignments, and assignment handouts specifically targeted for this audience. The sequence of assignments is a key part of the course. Some of the assignments are modifications of pre-existing work and others are completely new. We describe the key decisions we made about the course organization and content and describe the assignments. An important feature of the course is that it was geographically distributed with copies of the grid software installed at three campuses. Those campuses plus three others were receiving sites and included students and faculty associated with nine universities.


Frontiers in Education | 2004

Peer-centered service learning

Mark A. Holliday; David R. Luginbuhl

We believe that improved learning by the undergraduate computer science major is intrinsically linked with improving student engagement. We have developed a framework aimed at encouraging student engagement. Most of the individual ideas are not especially innovative. However, we think others will be interested in how we have integrated them and made them a visible and central part of our undergraduate educational experience. We focus on three particular areas identified as critical for improving student engagement: student-faculty interaction, active and collaborative learning, and experiences outside the classroom. It requires that students take on roles that either previously did not exist or were the sole province of the faculty. The key to this approach is the integration of two techniques that others have identified: peer learning and service learning. Because the service learning is centered on the peer of the student providing the service we use the term peer-centered service learning.


cluster computing and the grid | 2005

Experiences in teaching a geographically distributed undergraduate grid computing course

Barry Wilkinson; Mark A. Holliday; Clayton Ferner

This paper describes the experiences of teaching a new undergraduate grid computing course to students across the State of North Carolina in Fall 2004. This course is specifically focused at the undergraduate level and has a large number of geographically distributed participating sites. New materials have been developed for undergraduate students. We have developed a coherent set of grid computing programming assignments. All the materials developed are available on-line. This course also had internationally known guest speakers to provide state-of-the art presentations. Apart from developing grid computing materials, a number of issues arose in using the grid computing software and coordinating the activities, which are described here.


technical symposium on computer science education | 1997

System calls and interrupt vectors in an operating systems course

Mark A. Holliday

The introductory operating systems course has a tendency to appear to the student as a disparate collection of topics such as synchronization primitives, process scheduling algorithms, and page replacement policies. We describe a sequence of material to cover early in the operating systems course that prevents this tendency by clarifying the goal of the course and by providing a framework for understanding how the later course material is used in kernel design. The material centers around two concepts. First is the importance of the abstraction provided by the system call interface, that the kernel is the implementation of that interface, and the analogy with the instruction set interface the student has already encountered. Second is how the interrupt vector mechanism in a broad sense is central to how the kernel functions and underpins the actual implementation of many of the other topics in the course. Illustration through code from a real operating system kernel is a key feature of how this sequence makes clear the workings of an operating system.

Collaboration


Dive into the Mark A. Holliday's collaboration.

Top Co-Authors

Avatar

Barry Wilkinson

University of North Carolina at Charlotte

View shared research outputs
Top Co-Authors

Avatar

David R. Luginbuhl

Western Carolina University

View shared research outputs
Top Co-Authors

Avatar

Gregory Wolffe

Grand Valley State University

View shared research outputs
Top Co-Authors

Avatar

Andrew Scott

Western Carolina University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Clayton Ferner

University of North Carolina at Wilmington

View shared research outputs
Top Co-Authors

Avatar

Constance G. Bland

Mississippi Valley State University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge