Yong-Kee Jun

Learn More
One of the major bugs in shared-memory parallel programs is the instructions accessing a shared variable with at least one write-access without coordinations in a set of parallel tasks. Such bugs, called data race or parallel access anomaly, result in unintended nonde-terministic executions of the programs, and then make debugging parallel programs diicult.(More)
Detecting races is important for debugging shared-memory parallel programs , because the races result in unintended nondeterministic executions of the programs. Previous on-they techniques to detect races in programs with nested parallelism cannot guarantee that the race detected rst is not preceded by events that also participate in a race (occurred rst in(More)
Detecting races is important for debugging shared-memory parallel programs, because the races result in unintended nondeterministic executions of the programs. Most on-thefly techniques to detect the races cause the central bottlenecks of serializing all accesses of each thread to a shared variable. The amount of such bottlenecks can be reduced in case of(More)
Detecting races is important for debugging shared-memory parallel programs, because the races result in unintended nondeterministic executions of the programs. Previous on-they techniques to detect races in programs with inter-thread coordination such as ordered synchronization cannot guarantee that the race detected rst is not preceded by events that also(More)
Hierarchical scheduling frameworks provide ways for composing large and complex real-time systems from independent sub-systems. In this paper, we consider the imprecise reward-based periodic task model in a compositional scheduling framework. Thus, we introduce the imprecise periodic resource model to characterize the imprecise resource allocations, and the(More)
It is important to analyze and identify potential deadlocks resident in multithreaded programs from a successful deadlock-free execution, because the nondeterministic nature of such programs may hide the errors during testing. Visualizing the runtime behaviors of locking operations makes it possible to debug such errors effectively, because it provides(More)
OpenMP provides a portable way to achieve high performance and simple compiler directives to transform a sequential program into parallel program. It is important to detect data races in OpenMP programs, because they may lead to unpredictable results from an execution of the programs. To detect data races that occur during an execution of OpenMP programs,(More)
The ARINC-653 standard architecture for flight software specifies an application executive (APEX) which provides an application programming interface and defines a hierarchical framework which provides health management for error detection and recovery. In every partition of the architecture, however, asynchronously concurrent processes or threads may(More)