A lightweight process facility supporting meta-level programming

Yasushi Shinjo, Yasushi Kiyoki

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)

Abstract

This paper presents an implementation method of application-specific lightweight processes (threads). The main feature of this method is that the design of lightweight processes is done by using meta-level programming techniques. In this method, lightweight processes are implemented by using the concepts of microprocesses and virtual processors. A microprocess is an application-level (user-level) lightweight process and it is included in a regular (heavy weight) process. Microprocesses are executed by virtual processors which are provided by the operating system kernel. A virtual processor is an entry of a real processor which is assigned to an application process by the kernel. In this method, a virtual processor is regarded as a meta-lightweight process of user-level lightweight processes. Application programmers can describe the behavior of lightweight processes at the meta-level as well as at the base lightweight process level. In other words, application programmers can control lightweight processes by dealing with virtual processors. Each virtual processor has its own private areas of memory. These areas correspond to the lightweight-process-specific data areas, and they are used to store the identifier of the virtual processor, the variables and the stack of the lightweight process scheduler. At the meta-level, events for state transitions of lightweight processes are recorded, and they are used to tune performance.

Original languageEnglish
Pages (from-to)1429-1454
Number of pages26
JournalParallel Computing
Volume22
Issue number11
Publication statusPublished - 1997 Jan 1

Keywords

  • Lightweight processes
  • Meta-level programming
  • Operating systems
  • Shared-memory multiprocessors
  • Threads
  • Virtual processors

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture
  • Computer Networks and Communications
  • Computer Graphics and Computer-Aided Design
  • Artificial Intelligence

Fingerprint

Dive into the research topics of 'A lightweight process facility supporting meta-level programming'. Together they form a unique fingerprint.

Cite this