In this paper we present the main results achieved with the implementation of an efficient multithread library, hereinafter called DIA_Thread library, built on the top of a shared memory symmetric multiprocessor environment. The idea which led us to this project was the lack of a minimal common layer which, as far the multitasking concerns, should help us to make our applications portable among different architectures and/or operating systems. In fact, there are more and more multiprocessor machines available but it is still difficult to exploit the inherent parallelism of the underlying hardware inside a single user application because the available tools are often different in performance and semantics.This package is intendend to be portable. It consists of less than two thousands lines of C code and only a few lines of assembly code. Moreover bif effort was spent to design the main structures in order to have a package absolutely architecture independent, that is, the dependencies on the host operating system were minimized and no assumption was made on the processor configuration, both on their total number and their basic interprocess communication support.The DIA_Thread library basically provides few functions to activate and manage multiple flows of control with a little extra overhead. The useer application may be split in a virtually unlimited number of threads which will carry on their own task communicating each other by means of common memory areas protected by semaphores. © 1992, ACM. All rights reserved.

Another C Threads Library

Cattaneo, G.
;
1991-01-01

Abstract

In this paper we present the main results achieved with the implementation of an efficient multithread library, hereinafter called DIA_Thread library, built on the top of a shared memory symmetric multiprocessor environment. The idea which led us to this project was the lack of a minimal common layer which, as far the multitasking concerns, should help us to make our applications portable among different architectures and/or operating systems. In fact, there are more and more multiprocessor machines available but it is still difficult to exploit the inherent parallelism of the underlying hardware inside a single user application because the available tools are often different in performance and semantics.This package is intendend to be portable. It consists of less than two thousands lines of C code and only a few lines of assembly code. Moreover bif effort was spent to design the main structures in order to have a package absolutely architecture independent, that is, the dependencies on the host operating system were minimized and no assumption was made on the processor configuration, both on their total number and their basic interprocess communication support.The DIA_Thread library basically provides few functions to activate and manage multiple flows of control with a little extra overhead. The useer application may be split in a virtually unlimited number of threads which will carry on their own task communicating each other by means of common memory areas protected by semaphores. © 1992, ACM. All rights reserved.
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11386/4709822
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 1
  • ???jsp.display-item.citation.isi??? 0
social impact