14,049 research outputs found
Застосування Free Pascal для підтримки курсу системного програмування в Unix
Мета роботи - створити довідник системного програміста в UNIX на мові Паскаль. У результаті було створено Посібник системного програміста в UNIX в середовищі Free Pascal. Особливістю вибраних засобів реалізації поставлених завдань є їх відкритість, низька вартість і переносимість. Це дозволяє розробленому програмному забезпеченню функціонувати під управлінням багатьох операційних систем.The purpose was to create a handbook of UNIX system programmer in Pascal. As a result, it was created the guide of system programmer in UNIX in Free Pascal environment. Feature of the chosen means of implementation of tasks is their openness, low cost and portability. This allows developed software be running in many operating systems.Цель работы - создать справочник системного программиста в UNIX на языке Паскаль. В результате было создано Руководство системного программиста в UNIX в среде Free Pascal. Особенностью выбранных средств реализации поставленных задач является их открытость, низкая стоимость и переносимость. Это позволяет разработанном программному обеспечению функционировать под управлением многих операционных систем
The q-Interface to UNIX
This report describes an application program interface to UNIX called the q-interface. It is designed to provide the programmer with convenient access to a reliable, message-oriented asynchronous network transport service, and to asynchronous event handling in general. It utilizes a «call-back» paradigm to notify the programmer of the occurrence of asynchronous events, and guarantees that all call-backs are atomic. It hides both the notification mechanism of the underlying operating system and the underlying networking system, which in the first implementation is TCP/IP
Implementing fault tolerant applications using reflective object-oriented programming
Abstract: Shows how reflection and object-oriented programming can be used to ease the implementation of classical fault tolerance mechanisms in distributed applications. When the underlying runtime system does not provide fault tolerance transparently, classical approaches to implementing fault tolerance mechanisms often imply mixing functional programming with non-functional programming (e.g. error processing mechanisms). The use of reflection improves the transparency of fault tolerance mechanisms to the programmer and more generally provides a clearer separation between functional and non-functional programming. The implementations of some classical replication techniques using a reflective approach are presented in detail and illustrated by several examples, which have been prototyped on a network of Unix workstations. Lessons learnt from our experiments are drawn and future work is discussed
FRIENDS - A flexible architecture for implementing fault tolerant and secure distributed applications
FRIENDS is a software-based architecture for implementing fault-tolerant and, to some extent, secure applications. This architecture is composed of sub-systems and libraries of metaobjects. Transparency and separation of concerns is provided not only to the application programmer but also to the programmers implementing metaobjects for fault tolerance, secure communication and distribution. Common services required for implementing metaobjects are provided by the sub-systems. Metaobjects are implemented using object-oriented techniques and can be reused and customised according to the application needs, the operational environment and its related fault assumptions. Flexibility is increased by a recursive use of metaobjects. Examples and experiments are also described
The PISCES 2 parallel programming environment
PISCES 2 is a programming environment for scientific and engineering computations on MIMD parallel computers. It is currently implemented on a flexible FLEX/32 at NASA Langley, a 20 processor machine with both shared and local memories. The environment provides an extended Fortran for applications programming, a configuration environment for setting up a run on the parallel machine, and a run-time environment for monitoring and controlling program execution. This paper describes the overall design of the system and its implementation on the FLEX/32. Emphasis is placed on several novel aspects of the design: the use of a carefully defined virtual machine, programmer control of the mapping of virtual machine to actual hardware, forces for medium-granularity parallelism, and windows for parallel distribution of data. Some preliminary measurements of storage use are included
An Exploratory Study into Open Source Platform Adoption
Research on open source software has focused mainly on the motivations of open source programmers and the organization of open source projects [17] [19]. Some researchers portray open source as an extension of the earlier open systems movement [36]. While there has been some research on open-systems software adoption by corporate MIS organizations [4] the issue of open source adoption has received little attention.
We use a series of interviews with MIS managers to develop a grounded theory of open source platform adoption. We contrast this to prior academic and popular reports about the adoption of open source
Tools for distributed application management
Distributed application management consists of monitoring and controlling an application as it executes in a distributed environment. It encompasses such activities as configuration, initialization, performance monitoring, resource scheduling, and failure response. The Meta system (a collection of tools for constructing distributed application management software) is described. Meta provides the mechanism, while the programmer specifies the policy for application management. The policy is manifested as a control program which is a soft real-time reactive program. The underlying application is instrumented with a variety of built-in and user-defined sensors and actuators. These define the interface between the control program and the application. The control program also has access to a database describing the structure of the application and the characteristics of its environment. Some of the more difficult problems for application management occur when preexisting, nondistributed programs are integrated into a distributed application for which they may not have been intended. Meta allows management functions to be retrofitted to such programs with a minimum of effort
A metaobject architecture for fault-tolerant distributed systems : the FRIENDS approach
The FRIENDS system developed at LAAS-CNRS is a metalevel architecture providing libraries of metaobjects for fault
tolerance, secure communication, and group-based distributed applications. The use of metaobjects provides a nice separation of concerns between mechanisms and applications. Metaobjects can be used transparently by applications and can be composed according to the needs of a given application, a given architecture, and its underlying properties. In FRIENDS, metaobjects are used recursively to add new properties to applications. They are designed using an object oriented design method and implemented on top of basic system services. This paper describes the FRIENDS software-based architecture, the object-oriented development of metaobjects, the experiments that we have done, and summarizes the advantages and drawbacks of a metaobject approach for building fault-tolerant system
The essence of component-based design and coordination
Is there a characteristic of coordination languages that makes them
qualitatively different from general programming languages and deserves special
academic attention? This report proposes a nuanced answer in three parts. The
first part highlights that coordination languages are the means by which
composite software applications can be specified using components that are only
available separately, or later in time, via standard interfacing mechanisms.
The second part highlights that most currently used languages provide
mechanisms to use externally provided components, and thus exhibit some
elements of coordination. However not all do, and the availability of an
external interface thus forms an objective and qualitative criterion that
distinguishes coordination. The third part argues that despite the qualitative
difference, the segregation of academic attention away from general language
design and implementation has non-obvious cost trade-offs.Comment: 8 pages, 2 figures, 3 table
- …