About: Abstraction layer is a research topic. Over the lifetime, 2654 publications have been published within this topic receiving 37935 citations. The topic is also known as: abstraction level.
TL;DR: Simics is a platform for full system simulation that can run actual firmware and completely unmodified kernel and driver code, and it provides both functional accuracy for running commercial workloads and sufficient timing accuracy to interface to detailed hardware models.
Abstract: Full system simulation seeks to strike a balance between accuracy and performance. Many of its possibilities have been obvious to practitioners in both academia and industry for quite some time, perhaps decades, but Simics supports more of these possibilities within a single framework than other tools do. Simics is a platform for full system simulation that can run actual firmware and completely unmodified kernel and driver code. It is sufficiently abstract to achieve tolerable performance levels, and it provides both functional accuracy for running commercial workloads and sufficient timing accuracy to interface to detailed hardware models. Simics can also run a heterogeneous network of systems from different vendors within the same framework. Exceptionally fast, Simics can easily add new components and leverage older ones within a practical abstraction level. It offers a platform with a rich API and a powerful scripting environment for use in a broad range of applications.
TL;DR: A virtual machine can support individual processes or a complete system depending on the abstraction level where virtualization occurs, and replication by virtualization enables more flexible and efficient and efficient use of hardware resources.
Abstract: A virtual machine can support individual processes or a complete system depending on the abstraction level where virtualization occurs. Some VMs support flexible hardware usage and software isolation, while others translate from one instruction set to another. Virtualizing a system or component -such as a processor, memory, or an I/O device - at a given abstraction level maps its interface and visible resources onto the interface and resources of an underlying, possibly different, real system. Consequently, the real system appears as a different virtual system or even as multiple virtual systems. Interjecting virtualizing software between abstraction layers near the HW/SW interface forms a virtual machine that allows otherwise incompatible subsystems to work together. Further, replication by virtualization enables more flexible and efficient and efficient use of hardware resources.
TL;DR: In this article, an overview of state-of-the-art approaches in object-oriented technology as well as practical guidance for their use in software design is provided, covering forming class hierarchies and interaction relationships between objects.
Abstract: Provides an overview of state-of-the-art approaches in object-oriented technology as well as practical guidance for their use in software design. Covers forming class hierarchies and interaction relationships between objects, software architectures that allow for reuse of code and design, and documenting object-oriented design on an adequate abstraction level. Includes examples and a case study.
TL;DR: In this paper, the authors present methods for managing, sharing and providing access to data, especially among systems that are used to conduct a distributed (200) application, and an abstraction layer may be used to abstract data elements (e.g., files, database elements) from those used by an application.
Abstract: Methods are provided for managing, (202) sharing and providing access to data, especially among systems that are used to conduct a distributed (200) application. Such methods may be beneficial, for example, in distributed networks having occasionally-connected (200) devices. Methods are provided for linking and (211) synchronizing data in a distributed network. In one example system, loosely-coupled systems may be used to implement such a (200) network. Further, an abstraction layer may be used to abstract data elements (e.g., files, database elements) from those used by an (200) application.
TL;DR: How a novel model-based UIDL can provide useful support both at design and runtime for service-oriented architectures in ubiquitous environments is discussed.
Abstract: One important evolution in software applications is the spread of service-oriented architectures in ubiquitous environments. Such environments are characterized by a wide set of interactive devices, with interactive applications that exploit a number of functionalities developed beforehand and encapsulated in Web services. In this article, we discuss how a novel model-based UIDL can provide useful support both at design and runtime for these types of applications. Web service annotations can also be exploited for providing hints for user interface development at design time. At runtime the language is exploited to support dynamic generation of user interfaces adapted to the different devices at hand during the user interface migration process, which is particularly important in ubiquitous environments.