Kumseok Jung, Julien Gascon-Samson, K. Pattabiraman
{"title":"OneOS: Middleware for Running Edge Computing Applications as Distributed POSIX Pipelines","authors":"Kumseok Jung, Julien Gascon-Samson, K. Pattabiraman","doi":"10.1145/3453142.3493505","DOIUrl":null,"url":null,"abstract":"Edge computing application developers often need to employ a combination of software tools in order to deal with the challenges of heterogeneity and network dynamism. As a result, developers write extra code irrelevant to the core application logic, to provide interoperability between interacting tools. Existing software frameworks offer programming models and cloud-hosted services to ease the overall development process. However, the framework-specific APIs exacerbate the technology fragmentation problem, requiring developers to write more glue code between competing frameworks. In this paper, we present a middleware called OneOS, which provides a distributed computing environment through the standard POSIX API. OneOS maintains a global view of the computer network, presenting the same file system and process space to any user application running in the network. OneOS intercepts POSIX API calls and transparently handles the interaction with the corresponding I/O resource in the network. Using the OneOS Domain-Specific Language (DSL), users can distribute a legacy POSIX pipeline over the network. We evaluate the performance of OneOS against an open-source IoT Platform, ThingsJS, using an IoT stream processing benchmark suite, and a distributed video processing application. OneOS executes the programs about 3x faster than ThingsJS, and reduces the code size by about 25%.","PeriodicalId":6779,"journal":{"name":"2021 IEEE/ACM Symposium on Edge Computing (SEC)","volume":"22 1","pages":"242-256"},"PeriodicalIF":0.0000,"publicationDate":"2021-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 IEEE/ACM Symposium on Edge Computing (SEC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3453142.3493505","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
Edge computing application developers often need to employ a combination of software tools in order to deal with the challenges of heterogeneity and network dynamism. As a result, developers write extra code irrelevant to the core application logic, to provide interoperability between interacting tools. Existing software frameworks offer programming models and cloud-hosted services to ease the overall development process. However, the framework-specific APIs exacerbate the technology fragmentation problem, requiring developers to write more glue code between competing frameworks. In this paper, we present a middleware called OneOS, which provides a distributed computing environment through the standard POSIX API. OneOS maintains a global view of the computer network, presenting the same file system and process space to any user application running in the network. OneOS intercepts POSIX API calls and transparently handles the interaction with the corresponding I/O resource in the network. Using the OneOS Domain-Specific Language (DSL), users can distribute a legacy POSIX pipeline over the network. We evaluate the performance of OneOS against an open-source IoT Platform, ThingsJS, using an IoT stream processing benchmark suite, and a distributed video processing application. OneOS executes the programs about 3x faster than ThingsJS, and reduces the code size by about 25%.