Programming-Language Structures for Representing and Optimizing Operating-System Resources
Programming-Language Structures for Representing and Optimizing Operating-System Resources
批准号:
9633438
负责人:
Gerald Sussman
金额:
$10.0万
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
1996
资助国家:
美国
项目状态:
已结题
起止时间:
1996-08-15 至 1998-07-31
中文摘要
这个研究项目旨在证明基本的操作系统服务和资源可以而且应该直接用高级编程语言的自然语言结构表示。这种努力的一个组成部分是开发积极的优化策略,使这种建模实用和高效。这项研究的核心问题是:如何将高级编程语言的好处应用到当前的系统编程实践中?现代计算机应用程序通常是用C语言编写的,这种语言因缺乏对编写模块化、健壮程序的支持而闻名。C没有模块系统,允许危险的数据类型“强制转换”,违反抽象障碍,不提供对自动存储管理的垃圾收集支持,没有并发操作符,并且通常向程序员公开底层机器的详细信息。它不是根据数学上合理的底层语义来定义的。因此,现代软件是脆弱的、容易出错的,并且难以构建、维护或重用。现代编程语言,如ML语言家族,为程序员编写大型、健壮的程序提供了更多的支持。不幸的是,这些语言还不是实现现实世界系统软件的实用工具。在实践中,用这些语言编写的程序速度很慢,使用大量内存,并且与操作系统服务的接口也很笨拙。提供从用这些语言编写的程序到机器资源的访问,以语言自然的方式,应该有助于解决这些缺点。这项研究为程序员提供了新的优化和可用的新模型,允许编写利用高级编程语言的表达能力的系统程序。服务内核以一种在体系结构和实现上与高级语言紧密集成的方式提供对底层机器资源的访问。本研究的问题是研究与现代编程语言共生的操作系统的体系结构,而不是与C语言共生的操作系统,并开发利用操作系统和编译器紧密集成的技术,以提供高效、高级的服务。该内核是在两个硬件平台上用机器学习开发的:一个是纯英特尔PC系统,一个是带有有限板载资源的无线移动“个人数字助理”。***
英文摘要
This research project seeks to demonstrate that fundamental operating system services and resources can and should be represented directly in the natural linguistic structures of advanced programming languages. A component of this effort is to develop aggressive optimisation strategies making this modelling practical and efficient. The central question underlying the research is: how can the benefits of advanced programming languages be brought to bear upon current systems-programming practice? Modern computer applications are most commonly written in C, a language well- known for its lack of support for writing modular, robust programs. C has no module system, allows dangerous "casting" of data types, violates abstraction barriers, provides no garbage- collection support for automatic storage management, has no concurrency operators, and generally exposes the details of the underlying machine to the programmer. It is not defined in terms of a mathematically sound underlying semantics. As a result, modern software is fragile, error-prone, and difficult to build, maintain or reuse. Modern programming languages, such as the ML family of languages, provide much more support to the programmer for writing large, robust programs. Unfortunately, these languages are not yet practical tools for implementing real-world systems software. In practice, programs written in these languages are slow, use large amounts of memory, and have awkward interfaces to OS services. Providing access from programs written in these languages to the machine resources, in ways that are natural to the language, should help to address these shortcomings. This research enables new optimisations and makes available new models to the programmer, allowing systems programs to be written that exploit the expressive power of advanced programming languages. A service kernel provides access to the underlying machine resources in a way that is tightly integrated, both in architecture and in implem entation, with advanced languages. The research issue is to investigate the architecture of an operating system that is symbiotic, not with C, but with a modern programming language, and to develop technologies for exploiting the tight integration of the OS and the compiler to provide efficient, high-level services. The kernel is being developed in ML, on two hardware platforms: a bare Intel PC system, and a wireless, mobile "personal digital assistant" with limited on-board resources. ***
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
CSR: SHF: Small: Propagator-Based Computing, A Programming Foundation for Decentralized Systems
-
批准号:1116294
-
项目类别:Standard Grant
-
资助金额:$20.0万
-
财政年份:2011
-
负责人:Gerald Sussman
-
依托单位:
Workshop on The Living Heritage of Artificial Intelligence
-
批准号:0740093
-
项目类别:Standard Grant
-
资助金额:$0.0万
-
财政年份:2007
-
负责人:Gerald Sussman
-
依托单位:
Bio-QuBIC: Robust Engineering using Biologically-Inspired Models of Cell Differentiation and Morphogenesis
-
批准号:0130391
-
项目类别:Standard Grant
-
资助金额:$50.0万
-
财政年份:2001
-
负责人:Gerald Sussman
-
依托单位:
Computational Mechanics Workbench
-
批准号:9616764
-
项目类别:Standard Grant
-
资助金额:$0.0万
-
财政年份:1996
-
负责人:Gerald Sussman
-
依托单位:
The Supercomputer Toolkit: Towards a General Theory of Special Computing
-
批准号:9001651
-
项目类别:Continuing Grant
-
资助金额:$164.14万
-
财政年份:1990
-
负责人:Gerald Sussman
-
依托单位:
Abstraction, Inspection and Debugging in Programming
-
批准号:8117633
-
项目类别:Continuing grant
-
资助金额:$0.0万
-
财政年份:1982
-
负责人:Gerald Sussman
-
依托单位:
Computer Aided Evolutionary Design For Software Engineering
-
批准号:7912179
-
项目类别:Continuing Grant
-
资助金额:$21.0万
-
财政年份:1979
-
负责人:Gerald Sussman
-
依托单位:
Engineering Problem Solving Project
-
批准号:7704828
-
项目类别:Standard Grant
-
资助金额:$0.0万
-
财政年份:1977
-
负责人:Gerald Sussman
-
依托单位:
海外基金