CSR: Small: Operating Systems Kernels in High-Level Languages

CSR:小:高级语言的操作系统内核

基本信息

  • 批准号:
    1617487
  • 负责人:
  • 金额:
    $ 50万
  • 依托单位:
  • 依托单位国家:
    美国
  • 项目类别:
    Standard Grant
  • 财政年份:
    2016
  • 资助国家:
    美国
  • 起止时间:
    2016-10-01 至 2019-09-30
  • 项目状态:
    已结题

项目摘要

Most software depends on the correctness and efficiency of the underlying operating system kernel, since the kernel mediates access to resources such as storage, network, and memory. Kernels are typically implemented in low-level languages, for example, the Linux kernel is written in the C language; such languages are efficient but difficult to use correctly. In contrast, implementing kernels in high-level languages could in principle result in both reduced programmer effort and reduced incidence of bugs. This research will explore the costs and benefits of implementing kernels in high-level languages.The main reason kernels use C is performance. C allows a kernel to define its own high-performance mechanisms for memory management, thread scheduling, interrupts, etc. In contrast, high-level languages tend to prescribe specific particular mechanisms in these areas, which are difficult to change. One potential problem is that high-level languages are often garbage-collected to improve safety, but garbage collection is widely viewed as too slow to use in kernels.This project will first investigate performance: whether a kernel written in a high-level language can be as fast as a kernel written in C. The project will implement a kernel using the Go language, a type-safe, garbage-collected language with good support for threads. Then, the plan is to compare performance with existing C kernels such as Linux, OpenBSD, and FreeBSD. It is expected there will be a need to face efficiency and functionality challenges, particularly in the use of garbage collection for large kernel data structures such as file and page caches.The project's second area of focus will be to exploit the high-level language to achieve multi-core in-kernel parallelism in situations that are not practical when using C. C impedes flexible use of transient threads, since the programmer must supply the logic to decide when the last thread has finished using each shared object, which can then be freed. Extensive use of threads is much easier when a garbage collector automates this task. The plan is to exploit Go's garbage collection by implementing complex system calls such as fork and exec using internal worker threads on multiple cores. The team will evaluate whether the resulting performance and scalability improvement can be made to outweigh the costs of garbage collection and thread overhead.Intellectual merit.This work will shed quantitative light on the effect of language choice on kernel performance, a question that is currently understood mostly anecdotally. The interaction of garbage collection with the specific ways kernels use memory is particularly worth understanding. The investigation of in-kernel parallelism will exploit high-level language support to harness techniques that are impractical in C kernels.Broader impacts.The work has the potential for broad impact because most software depends critically on services provided by the operating system kernel. Using a better language for the kernel would likely reduce the prevalence of bugs and increase the ease with which kernel developers can provide desirable new features. Providing solid evidence to support an eventual switch to language technology which ought to make kernels more reliable and easier to develop is the intended outcome.
大多数软件依赖于底层操作系统内核的正确性和效率,因为内核介导对存储、网络和内存等资源的访问。内核通常是用低级语言实现的,例如,Linux内核是用C语言编写的;这样的语言很有效,但很难正确使用。相比之下,用高级语言实现内核原则上可以减少程序员的工作量和错误的发生率。这项研究将探讨在高级语言中实现内核的成本和好处。内核使用C的主要原因是性能。C允许内核定义自己的高性能机制,用于内存管理,线程调度,中断等,相反,高级语言倾向于在这些领域规定特定的特定机制,这些机制很难改变。一个潜在的问题是高级语言通常会进行垃圾收集以提高安全性,但垃圾收集被广泛认为太慢而不能在内核中使用。本项目将首先研究性能:用高级语言编写的内核是否可以像用C编写的内核一样快。该项目将使用Go语言实现一个内核,Go语言是一种类型安全、垃圾收集的语言,对线程有很好的支持。然后,计划将性能与现有的C内核(如Linux、OpenBSD和FreeBSD)进行比较。预计将有需要面对效率和功能的挑战,特别是在使用垃圾收集的大型内核数据结构,如文件和页面缓存。该项目的第二个重点领域将是利用高级语言,以实现多核内核并行的情况下,是不切实际的使用C。C阻碍了瞬态线程的灵活使用,因为程序员必须提供逻辑来决定最后一个线程何时完成使用每个共享对象,然后才能释放。当垃圾收集器自动执行此任务时,线程的广泛使用就容易得多了。该计划是通过使用多个核心上的内部工作线程实现复杂的系统调用(例如fork和exec)来利用Go的垃圾收集。团队将评估是否可以使最终的性能和可伸缩性改进超过垃圾收集和线程开销的成本。智力价值。这项工作将定量地阐明语言选择对内核性能的影响,这是一个目前大多数人理解的问题。垃圾收集与内核使用内存的特定方式之间的交互尤其值得理解。内核并行性的调查将利用高级语言的支持,利用技术,是不切实际的C kernels.Broader的影响。这项工作有可能产生广泛的影响,因为大多数软件严重依赖于操作系统内核提供的服务。为内核使用更好的语言可能会减少bug的流行,并增加内核开发人员提供所需新功能的容易性。提供坚实的证据来支持最终转向语言技术,这应该使内核更可靠,更容易开发,这是预期的结果。

项目成果

期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Robert Morris其他文献

Peer–to–Peer Overlays: Issues and Trends
点对点覆盖:问题和趋势
  • DOI:
  • 发表时间:
    2013
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Arockia Mary M. Radhakrishnan;E. Lua;J. Crowcroft;M. Pias;Ravi Sharma;Steven Lim;Timo Tanner;J. Buford;Heather Yu;Eng Keong Lua quotP2P;Karl Aberer;M. Hauswirth;Ion Stoica;Robert Morris;David Karger;M. Kaashoek;Hari Balakrishnan;Jessie Hui Wang;Chungang Wang;Jiahai Yang;Hiroshi Nishida;Thinh Nguyen;Murat Karakaya;I. Korpeoglu
  • 通讯作者:
    I. Korpeoglu
The cost of convenience: Fellow and program director perspectives on the adequacy of virtual fellowship interviews as a replacement for in-person interviews (2317)
便利性的代价:研究员和项目主任对虚拟研究员面试作为面对面面试替代品的充分性的看法(2317)
  • DOI:
    10.1016/j.ygyno.2023.06.434
  • 发表时间:
    2023-09-01
  • 期刊:
  • 影响因子:
    4.100
  • 作者:
    Larissa Mattei;Madison Miller;Lauren Robb;Rosa Polan;Radhika Gogoi;Robert Morris
  • 通讯作者:
    Robert Morris
Prevalence of targetable and potentially targetable alterations in metastatic/recurrent cervical cancer specimens in a large genomic dataset
在一个大型基因组数据集中转移性/复发性宫颈癌样本中可靶向和潜在可靶向改变的流行率
  • DOI:
    10.1016/j.ygyno.2024.07.337
  • 发表时间:
    2024-11-01
  • 期刊:
  • 影响因子:
    4.100
  • 作者:
    John Wallbillich;Sami Nassar;Michael Wilson;Larissa Mattei;Elizabeth Johns;Radhika Gogoi;Robert Morris;Ira Winer
  • 通讯作者:
    Ira Winer
Double Opposing Zplasty with VY Advancement of the perineum: Long-term results of a new technique as an alternative to Fenton’s operation for narrowing and splitting of the skin at the posterior vaginal fourchette
  • DOI:
    10.1016/j.ejogrb.2018.02.003
  • 发表时间:
    2018-04-01
  • 期刊:
  • 影响因子:
  • 作者:
    Jonathan Frappell;Lia Riadin;Elhami Ebeid;Tilo Asmussen;Robert Morris
  • 通讯作者:
    Robert Morris
Disease site matters: Ovarian carcinosarcoma has far more genomic similarity to high-grade serous ovarian carcinoma than to uterine carcinosarcoma
  • DOI:
    10.1016/s0090-8258(21)00894-5
  • 发表时间:
    2021-08-01
  • 期刊:
  • 影响因子:
  • 作者:
    Christopher Walker;Erin Spencer;Gregory Dyson;Rouba Ali-Fehmi;Ira Winer;Michele Cote;Robert Morris;John Wallbillich
  • 通讯作者:
    John Wallbillich

Robert Morris的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Robert Morris', 18)}}的其他基金

Collaborative Research: Drivers and effects of latent phage activation in marine SAR11
合作研究:海洋 SAR11 中潜在噬菌体激活的驱动因素和影响
  • 批准号:
    2201310
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CSR: Medium: Collaborative Research: Soup: Flexible Storage and Processing for On-Line Applications
CSR:媒介:协作研究:汤:在线应用程序的灵活存储和处理
  • 批准号:
    1704172
  • 财政年份:
    2018
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Characterizing the contribution of bacteria from the SUP05 clade to autotrophic and heterotrophic carbon cycling across ocean gradients
表征 SUP05 进化枝细菌对跨海洋梯度自养和异养碳循环的贡献
  • 批准号:
    1558483
  • 财政年份:
    2016
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Mixotrophic bacteria and the cryptic marine sulfur cycle: Mechanisms of carbon assimilation and sulfur oxidation in the Arctic96BD-19 GSO clade
混合营养细菌和神秘的海洋硫循环:北极96BD-19 GSO进化枝的碳同化和硫氧化机制
  • 批准号:
    1232840
  • 财政年份:
    2012
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Program Development in Cybersecurity with Focus on Business and Healthcare Concepts
以商业和医疗保健概念为重点的网络安全项目开发
  • 批准号:
    1104106
  • 财政年份:
    2011
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CSR-PSCE, SM: An Operating System for Multi-core Processors
CSR-PSCE、SM:多核处理器操作系统
  • 批准号:
    0834415
  • 财政年份:
    2008
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
NeTS-FIND: User Information Architecture
NeTS-FIND:用户信息架构
  • 批准号:
    0627065
  • 财政年份:
    2006
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SBIR Phase I: Tools for Information Retrieval and Document Classification Using Fast Phonetic Word-Spotting Technology
SBIR 第一阶段:使用快速语音单词识别技术的信息检索和文档分类工具
  • 批准号:
    0441492
  • 财政年份:
    2005
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SEI(BIO)+II: Metadata-rich Image Databases for Biodiversity Applications
SEI(BIO) II:用于生物多样性应用的元数据丰富的图像数据库
  • 批准号:
    0430769
  • 财政年份:
    2004
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SBIR Phase I: Collaborative Product Definition Management
SBIR 第一阶段:协作产品定义管理
  • 批准号:
    0339708
  • 财政年份:
    2004
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant

相似国自然基金

昼夜节律性small RNA在血斑形成时间推断中的法医学应用研究
  • 批准号:
  • 批准年份:
    2024
  • 资助金额:
    0.0 万元
  • 项目类别:
    省市级项目
tRNA-derived small RNA上调YBX1/CCL5通路参与硼替佐米诱导慢性疼痛的机制研究
  • 批准号:
    n/a
  • 批准年份:
    2022
  • 资助金额:
    10.0 万元
  • 项目类别:
    省市级项目
Small RNA调控I-F型CRISPR-Cas适应性免疫性的应答及分子机制
  • 批准号:
    32000033
  • 批准年份:
    2020
  • 资助金额:
    24.0 万元
  • 项目类别:
    青年科学基金项目
Small RNAs调控解淀粉芽胞杆菌FZB42生防功能的机制研究
  • 批准号:
    31972324
  • 批准年份:
    2019
  • 资助金额:
    58.0 万元
  • 项目类别:
    面上项目
变异链球菌small RNAs连接LuxS密度感应与生物膜形成的机制研究
  • 批准号:
    81900988
  • 批准年份:
    2019
  • 资助金额:
    21.0 万元
  • 项目类别:
    青年科学基金项目
肠道细菌关键small RNAs在克罗恩病发生发展中的功能和作用机制
  • 批准号:
    31870821
  • 批准年份:
    2018
  • 资助金额:
    56.0 万元
  • 项目类别:
    面上项目
基于small RNA 测序技术解析鸽分泌鸽乳的分子机制
  • 批准号:
    31802058
  • 批准年份:
    2018
  • 资助金额:
    26.0 万元
  • 项目类别:
    青年科学基金项目
Small RNA介导的DNA甲基化调控的水稻草矮病毒致病机制
  • 批准号:
    31772128
  • 批准年份:
    2017
  • 资助金额:
    60.0 万元
  • 项目类别:
    面上项目
基于small RNA-seq的针灸治疗桥本甲状腺炎的免疫调控机制研究
  • 批准号:
    81704176
  • 批准年份:
    2017
  • 资助金额:
    20.0 万元
  • 项目类别:
    青年科学基金项目
水稻OsSGS3与OsHEN1调控small RNAs合成及其对抗病性的调节
  • 批准号:
    91640114
  • 批准年份:
    2016
  • 资助金额:
    85.0 万元
  • 项目类别:
    重大研究计划

相似海外基金

CSR: Small: Redshift: An Operating System for Pervasive Hardware Acceleration
CSR:小型:Redshift:用于普遍硬件加速的操作系统
  • 批准号:
    2313412
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Development of the reactive cluster sites operating multi-centered activation and multi-electron transfer oriented to resource utilization of inert small molecules
开发面向惰性小分子资源利用的多中心活化和多电子转移反应簇位点
  • 批准号:
    22K05184
  • 财政年份:
    2022
  • 资助金额:
    $ 50万
  • 项目类别:
    Grant-in-Aid for Scientific Research (C)
CNS Core: Small: Operating System Approaches for a Consolidated Rack Computer
CNS 核心:小型:整合机架计算机的操作系统方法
  • 批准号:
    2114218
  • 财政年份:
    2021
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CNS Core: Small: Operating Systems Abstractions for Serverless Computing
CNS 核心:小型:无服务器计算的操作系统抽象
  • 批准号:
    2008321
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SaTC: CORE: Small: Collaborative: Deep and Efficient Dynamic Analysis of Operating System Kernels
SaTC:核心:小型:协作:操作系统内核的深入有效的动态分析
  • 批准号:
    1953933
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SaTC: CORE: Small: Collaborative: Deep and Efficient Dynamic Analysis of Operating System Kernels
SaTC:核心:小型:协作:操作系统内核的深入有效的动态分析
  • 批准号:
    1953932
  • 财政年份:
    2020
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CNS Core: Small: Collaborative: Salvaging Commodity Operating Systems to Support Emerging Networking Technologies
CNS 核心:小型:协作:挽救商品操作系统以支持新兴网络技术
  • 批准号:
    1909486
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Small: Distributed DNA Computations Operating on a Collection of Cell Membranes
SHF:小型:在细胞膜集合上运行的分布式 DNA 计算
  • 批准号:
    1909848
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CNS Core: Small: Collaborative: Salvaging Commodity Operating Systems toSupport Emerging Networking Technologies
CNS 核心:小型:协作:挽救商品操作系统以支持新兴网络技术
  • 批准号:
    1909877
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
Development of fully-superconducting motor for large-capacity liquid hydrogen pump ~Operating demonstration of small prototype motor~
大容量液氢泵用全超导电机开发~小型样机电机运行演示~
  • 批准号:
    19K14964
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Grant-in-Aid for Early-Career Scientists
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了