Architectural and Operating System Support for Virtual Memory

Architectural and Operating System Support for Virtual Memory

Author: Abhishek Bhattacharjee

Publisher: Morgan & Claypool Publishers

Published: 2017-09-29

Total Pages: 177

ISBN-13: 1627059334

DOWNLOAD EBOOK

This book provides computer engineers, academic researchers, new graduate students, and seasoned practitioners an end-to-end overview of virtual memory. We begin with a recap of foundational concepts and discuss not only state-of-the-art virtual memory hardware and software support available today, but also emerging research trends in this space. The span of topics covers processor microarchitecture, memory systems, operating system design, and memory allocation. We show how efficient virtual memory implementations hinge on careful hardware and software cooperation, and we discuss new research directions aimed at addressing emerging problems in this space. Virtual memory is a classic computer science abstraction and one of the pillars of the computing revolution. It has long enabled hardware flexibility, software portability, and overall better security, to name just a few of its powerful benefits. Nearly all user-level programs today take for granted that they will have been freed from the burden of physical memory management by the hardware, the operating system, device drivers, and system libraries. However, despite its ubiquity in systems ranging from warehouse-scale datacenters to embedded Internet of Things (IoT) devices, the overheads of virtual memory are becoming a critical performance bottleneck today. Virtual memory architectures designed for individual CPUs or even individual cores are in many cases struggling to scale up and scale out to today's systems which now increasingly include exotic hardware accelerators (such as GPUs, FPGAs, or DSPs) and emerging memory technologies (such as non-volatile memory), and which run increasingly intensive workloads (such as virtualized and/or "big data" applications). As such, many of the fundamental abstractions and implementation approaches for virtual memory are being augmented, extended, or entirely rebuilt in order to ensure that virtual memory remains viable and performant in the years to come.


Architectural and Operating System Support for Virtual Memory

Architectural and Operating System Support for Virtual Memory

Author: Abhishek Bhattacharjee

Publisher: Springer Nature

Published: 2022-05-31

Total Pages: 168

ISBN-13: 3031017579

DOWNLOAD EBOOK

This book provides computer engineers, academic researchers, new graduate students, and seasoned practitioners an end-to-end overview of virtual memory. We begin with a recap of foundational concepts and discuss not only state-of-the-art virtual memory hardware and software support available today, but also emerging research trends in this space. The span of topics covers processor microarchitecture, memory systems, operating system design, and memory allocation. We show how efficient virtual memory implementations hinge on careful hardware and software cooperation, and we discuss new research directions aimed at addressing emerging problems in this space. Virtual memory is a classic computer science abstraction and one of the pillars of the computing revolution. It has long enabled hardware flexibility, software portability, and overall better security, to name just a few of its powerful benefits. Nearly all user-level programs today take for granted that they will have been freed from the burden of physical memory management by the hardware, the operating system, device drivers, and system libraries. However, despite its ubiquity in systems ranging from warehouse-scale datacenters to embedded Internet of Things (IoT) devices, the overheads of virtual memory are becoming a critical performance bottleneck today. Virtual memory architectures designed for individual CPUs or even individual cores are in many cases struggling to scale up and scale out to today's systems which now increasingly include exotic hardware accelerators (such as GPUs, FPGAs, or DSPs) and emerging memory technologies (such as non-volatile memory), and which run increasingly intensive workloads (such as virtualized and/or "big data" applications). As such, many of the fundamental abstractions and implementation approaches for virtual memory are being augmented, extended, or entirely rebuilt in order to ensure that virtual memory remains viable and performant in the years to come.


Hardware and Software Support for Virtualization

Hardware and Software Support for Virtualization

Author: Edouard Bugnion

Publisher: Morgan & Claypool Publishers

Published: 2017-02-21

Total Pages: 208

ISBN-13: 1627056882

DOWNLOAD EBOOK

This book focuses on the core question of the necessary architectural support provided by hardware to efficiently run virtual machines, and of the corresponding design of the hypervisors that run them. Virtualization is still possible when the instruction set architecture lacks such support, but the hypervisor remains more complex and must rely on additional techniques. Despite the focus on architectural support in current architectures, some historical perspective is necessary to appropriately frame the problem. The first half of the book provides the historical perspective of the theoretical framework developed four decades ago by Popek and Goldberg. It also describes earlier systems that enabled virtualization despite the lack of architectural support in hardware. As is often the case, theory defines a necessary—but not sufficient—set of features, and modern architectures are the result of the combination of the theoretical framework with insights derived from practical systems. The second half of the book describes state-of-the-art support for virtualization in both x86-64 and ARM processors. This book includes an in-depth description of the CPU, memory, and I/O virtualization of these two processor architectures, as well as case studies on the Linux/KVM, VMware, and Xen hypervisors. It concludes with a performance comparison of virtualization on current-generation x86- and ARM-based systems across multiple hypervisors.


TRON Project 1987 Open-Architecture Computer Systems

TRON Project 1987 Open-Architecture Computer Systems

Author: Ken Sakamura

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 311

ISBN-13: 4431680691

DOWNLOAD EBOOK

Almost 4 years have elapsed since Dr. Ken Sakamura of The University of Tokyo first proposed the TRON (the realtime operating system nucleus) concept and 18 months since the foundation of the TRON Association on 16 June 1986. Members of the Association from Japan and overseas currently exceed 80 corporations. The TRON concept, as advocated by Dr. Ken Sakamura, is concerned with the problem of interaction between man and the computer (the man-machine inter face), which had not previously been given a great deal of attention. Dr. Sakamura has gone back to basics to create a new and complete cultural environment relative to computers and envisage a role for computers which will truly benefit mankind. This concept has indeed caused a stir in the computer field. The scope of the research work involved was initially regarded as being so extensive and diverse that the completion of activities was scheduled for the 1990s. However, I am happy to note that the enthusiasm expressed by individuals and organizations both within and outside Japan has permitted acceleration of the research and development activities. It is to be hoped that the presentations of the Third TRON Project Symposium will further the progress toward the creation of a computer environment that will be compatible with the aspirations of mankind.


Persistent Object Systems

Persistent Object Systems

Author: John Rosenberg

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 412

ISBN-13: 1447131738

DOWNLOAD EBOOK

Persistent object systems are systems which support the creation and manipulation of objects in a uniform manner, regardless of how long they persist. This is in direct contrast with conventional systems where temporary objects are created and manipulated using one mechanism (typically programming language data structures) and permanent objects are maintained using a different mechanism (usually a filestore). The unification of temporary and permanent objects yields systems which are smaller and more efficient than conventional systems and which provide a powerful and flexible platform for the development of large, data intensive applications. This volume presents the proceedings of a workshop at which latest research in this area was discussed. The papers are grouped into sections on the following topics: type systems and persistence, persistent programming languages, implementing persistence, object stores, measurement of persistent systems, transactions and persistence, and persistent machines.


Virtual Machines

Virtual Machines

Author: James Edward Smith

Publisher: Elsevier

Published: 2005-06-03

Total Pages: 662

ISBN-13: 1558609105

DOWNLOAD EBOOK

In this text, Smith and Nair take a new approach by examining virtual machines as a unified discipline and pulling together cross-cutting technologies. Topics include instruction set emulation, dynamic program translation and optimization, high level virtual machines (including Java and CLI), and system virtual machines for both single-user systems and servers.


Proceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems

Proceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems

Author: Yunji Chen

Publisher:

Published: 2017-04-08

Total Pages:

ISBN-13: 9781450344654

DOWNLOAD EBOOK

ASPLOS '17: Architectural Support for Programming Languages and Operating Systems Apr 08, 2017-Apr 12, 2017 Xi'an, China. You can view more information about this proceeding and all of ACM�s other published conference proceedings from the ACM Digital Library: http://www.acm.org/dl.


The Design and Implementation of the FreeBSD Operating System

The Design and Implementation of the FreeBSD Operating System

Author: Marshall Kirk McKusick

Publisher: Pearson Education

Published: 2015

Total Pages: 926

ISBN-13: 0321968972

DOWNLOAD EBOOK

This book contains comprehensive, up-to-date, and authoritative technical information on the internal structure of the FreeBSD open-source operating system. Coverage includes the capabilities of the system; how to effectively and efficiently interface to the system; how to maintain, tune, and configure the operating system; and how to extend and enhance the system. The authors provide a concise overview of FreeBSD's design and implementation. Then, while explaining key design decisions, they detail the concepts, data structures, and algorithms used in implementing the systems facilities. As a result, this book can be used as an operating systems textbook, a practical reference, or an in-depth study of a contemporary, portable, open-source operating system. -- Provided by publisher.