Bash on ubuntu on macOS

Takaya Saeki, Yuichi Nishiwaki, Takahiro Shinagawa, Shinichi Honiden

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Linux is a popular operating system (OS) as a production environment, while many developers prefer to use macOS for their daily development. One way to deal with this situation is running Linux in a virtual machine and the other is porting development environments from Linux to macOS. However, using a virtual machine has a resource sharing problem, and porting environments is costly and often incomplete. A promising approach to low-cost and seamless resource sharing is to develop a Linux compatibility layer for macOS. Unfortunately, existing methods of implementing OS compatibility layers lack robustness or flexibility. In this paper, we propose a new architecture of OS-compatibility layers. It allows user-space implementation of the core emulation layer in the host OS to improve robustness while maintaining the flexible and powerful emulation ability without heavily depending on the host OS kernel by exploiting virtualization technology. We implemented our approach and confirmed that Ubuntu's userland runs on macOS. Our experimental results show that our approach has reasonable performance for real world applications.

Original languageEnglish
Title of host publicationProceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017
PublisherAssociation for Computing Machinery, Inc
ISBN (Electronic)9781450351973
DOIs
Publication statusPublished - 2017 Sep 2
Externally publishedYes
Event8th ACM Asia Pacific Conference on Systems, APSys 2017 - Mumbai, India
Duration: 2017 Sep 2 → …

Other

Other8th ACM Asia Pacific Conference on Systems, APSys 2017
CountryIndia
CityMumbai
Period17/9/2 → …

Fingerprint

Computer operating systems
Linux
Costs
Virtual machine
Virtualization

Keywords

  • Operating system compatibility
  • Virtualization

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Hardware and Architecture

Cite this

Saeki, T., Nishiwaki, Y., Shinagawa, T., & Honiden, S. (2017). Bash on ubuntu on macOS. In Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017 [3124733] Association for Computing Machinery, Inc. https://doi.org/10.1145/3124680.3124733

Bash on ubuntu on macOS. / Saeki, Takaya; Nishiwaki, Yuichi; Shinagawa, Takahiro; Honiden, Shinichi.

Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017. Association for Computing Machinery, Inc, 2017. 3124733.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Saeki, T, Nishiwaki, Y, Shinagawa, T & Honiden, S 2017, Bash on ubuntu on macOS. in Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017., 3124733, Association for Computing Machinery, Inc, 8th ACM Asia Pacific Conference on Systems, APSys 2017, Mumbai, India, 17/9/2. https://doi.org/10.1145/3124680.3124733
Saeki T, Nishiwaki Y, Shinagawa T, Honiden S. Bash on ubuntu on macOS. In Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017. Association for Computing Machinery, Inc. 2017. 3124733 https://doi.org/10.1145/3124680.3124733
Saeki, Takaya ; Nishiwaki, Yuichi ; Shinagawa, Takahiro ; Honiden, Shinichi. / Bash on ubuntu on macOS. Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017. Association for Computing Machinery, Inc, 2017.
@inproceedings{81008d71093d47cabadc5d7f091edd81,
title = "Bash on ubuntu on macOS",
abstract = "Linux is a popular operating system (OS) as a production environment, while many developers prefer to use macOS for their daily development. One way to deal with this situation is running Linux in a virtual machine and the other is porting development environments from Linux to macOS. However, using a virtual machine has a resource sharing problem, and porting environments is costly and often incomplete. A promising approach to low-cost and seamless resource sharing is to develop a Linux compatibility layer for macOS. Unfortunately, existing methods of implementing OS compatibility layers lack robustness or flexibility. In this paper, we propose a new architecture of OS-compatibility layers. It allows user-space implementation of the core emulation layer in the host OS to improve robustness while maintaining the flexible and powerful emulation ability without heavily depending on the host OS kernel by exploiting virtualization technology. We implemented our approach and confirmed that Ubuntu's userland runs on macOS. Our experimental results show that our approach has reasonable performance for real world applications.",
keywords = "Operating system compatibility, Virtualization",
author = "Takaya Saeki and Yuichi Nishiwaki and Takahiro Shinagawa and Shinichi Honiden",
year = "2017",
month = "9",
day = "2",
doi = "10.1145/3124680.3124733",
language = "English",
booktitle = "Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017",
publisher = "Association for Computing Machinery, Inc",

}

TY - GEN

T1 - Bash on ubuntu on macOS

AU - Saeki, Takaya

AU - Nishiwaki, Yuichi

AU - Shinagawa, Takahiro

AU - Honiden, Shinichi

PY - 2017/9/2

Y1 - 2017/9/2

N2 - Linux is a popular operating system (OS) as a production environment, while many developers prefer to use macOS for their daily development. One way to deal with this situation is running Linux in a virtual machine and the other is porting development environments from Linux to macOS. However, using a virtual machine has a resource sharing problem, and porting environments is costly and often incomplete. A promising approach to low-cost and seamless resource sharing is to develop a Linux compatibility layer for macOS. Unfortunately, existing methods of implementing OS compatibility layers lack robustness or flexibility. In this paper, we propose a new architecture of OS-compatibility layers. It allows user-space implementation of the core emulation layer in the host OS to improve robustness while maintaining the flexible and powerful emulation ability without heavily depending on the host OS kernel by exploiting virtualization technology. We implemented our approach and confirmed that Ubuntu's userland runs on macOS. Our experimental results show that our approach has reasonable performance for real world applications.

AB - Linux is a popular operating system (OS) as a production environment, while many developers prefer to use macOS for their daily development. One way to deal with this situation is running Linux in a virtual machine and the other is porting development environments from Linux to macOS. However, using a virtual machine has a resource sharing problem, and porting environments is costly and often incomplete. A promising approach to low-cost and seamless resource sharing is to develop a Linux compatibility layer for macOS. Unfortunately, existing methods of implementing OS compatibility layers lack robustness or flexibility. In this paper, we propose a new architecture of OS-compatibility layers. It allows user-space implementation of the core emulation layer in the host OS to improve robustness while maintaining the flexible and powerful emulation ability without heavily depending on the host OS kernel by exploiting virtualization technology. We implemented our approach and confirmed that Ubuntu's userland runs on macOS. Our experimental results show that our approach has reasonable performance for real world applications.

KW - Operating system compatibility

KW - Virtualization

UR - http://www.scopus.com/inward/record.url?scp=85030560484&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85030560484&partnerID=8YFLogxK

U2 - 10.1145/3124680.3124733

DO - 10.1145/3124680.3124733

M3 - Conference contribution

AN - SCOPUS:85030560484

BT - Proceedings of the 8th Asia-Pacific Workshop on Systems, APSys 2017

PB - Association for Computing Machinery, Inc

ER -