Controllled flexibility in system design

Allen Brady Montz, L. Peterson
{"title":"Controllled flexibility in system design","authors":"Allen Brady Montz, L. Peterson","doi":"10.1145/319195.319233","DOIUrl":null,"url":null,"abstract":"1 Challenge Historically, applications have been distributed in order to access more resources than a lone machine could supply, such as CPU power, disks, or the computers themselves (for fault tolerance). We are increasingly seeing applications which are distributed because they are meant to be used by multiple people, and multiple people generally have multiple machines. These applications are distributed by definition. A good example of this is a distributed multimedia application such as multicast video, email, or the World Wide Web. It is well understood how the interaction of software with people.makes the software more complicated; we are entering the realm of software which exists purely to glue people together. The popular focus on multimedia is on video and audio applications. While these certainly challenge current computers and profit companies, they are merely a shadow of the possibilities. This potential is not the ability of a computer to display one medium, but the ability to gracefully and efficiently handle a wide variety of data flows with differing requirements, many of which did not exist when that computer or its operating system was designed. The variation of types and topology of such flows is limited only by the creativity and whims of the human users. What sort of information flows will computers serve to us? What kinds of hardware and software will these machines need and have? How will these systems interact? We do not know. Nobody does. And we have to design our software to face this environment. This is the challenge of multimedia, and it parallels the general challenges facing these diffusely distributed applications in the near future. The important issue is not that software needs to be flexible and easily reconfigurable. We need to be able to control, predict, and modify the behavior of our software, and this requires that we have a firm understanding of and control over how software is configurable. We should not strive to make endlessly extendable systems-rather we should strive to make systems which are exactly as extendable as required. It is in this context that we are designing the Scout[6] system. Software designers have always been challenged to keep pace with the increasing demands placed on computers. Software, once written, is released into a dynamic world. Therefore, a fundamental property of successful software is that it can be changed. Most of the attention to this has been placed on static changes …","PeriodicalId":335784,"journal":{"name":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","volume":"158 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1998-09-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 8th ACM SIGOPS European workshop on Support for composing distributed applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/319195.319233","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

1 Challenge Historically, applications have been distributed in order to access more resources than a lone machine could supply, such as CPU power, disks, or the computers themselves (for fault tolerance). We are increasingly seeing applications which are distributed because they are meant to be used by multiple people, and multiple people generally have multiple machines. These applications are distributed by definition. A good example of this is a distributed multimedia application such as multicast video, email, or the World Wide Web. It is well understood how the interaction of software with people.makes the software more complicated; we are entering the realm of software which exists purely to glue people together. The popular focus on multimedia is on video and audio applications. While these certainly challenge current computers and profit companies, they are merely a shadow of the possibilities. This potential is not the ability of a computer to display one medium, but the ability to gracefully and efficiently handle a wide variety of data flows with differing requirements, many of which did not exist when that computer or its operating system was designed. The variation of types and topology of such flows is limited only by the creativity and whims of the human users. What sort of information flows will computers serve to us? What kinds of hardware and software will these machines need and have? How will these systems interact? We do not know. Nobody does. And we have to design our software to face this environment. This is the challenge of multimedia, and it parallels the general challenges facing these diffusely distributed applications in the near future. The important issue is not that software needs to be flexible and easily reconfigurable. We need to be able to control, predict, and modify the behavior of our software, and this requires that we have a firm understanding of and control over how software is configurable. We should not strive to make endlessly extendable systems-rather we should strive to make systems which are exactly as extendable as required. It is in this context that we are designing the Scout[6] system. Software designers have always been challenged to keep pace with the increasing demands placed on computers. Software, once written, is released into a dynamic world. Therefore, a fundamental property of successful software is that it can be changed. Most of the attention to this has been placed on static changes …
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
系统设计的可控灵活性
从历史上看,应用程序的分布是为了访问比单个机器所能提供的更多的资源,例如CPU电源、磁盘或计算机本身(用于容错)。我们越来越多地看到分布式应用程序,因为它们是为多人使用而设计的,而多人通常有多台机器。这些应用程序是按定义分发的。分布式多媒体应用程序就是一个很好的例子,例如多播视频、电子邮件或万维网。众所周知,软件是如何与人互动的。使软件更加复杂;我们正在进入一个纯粹为了把人们粘合在一起而存在的软件领域。多媒体的流行焦点是视频和音频应用。虽然这些技术无疑会挑战当前的计算机并使公司盈利,但它们只是各种可能性的一个缩影。这种潜力不是计算机显示一种媒体的能力,而是优雅而有效地处理具有不同需求的各种数据流的能力,其中许多数据流在设计计算机或其操作系统时并不存在。这种流的类型和拓扑结构的变化只受到人类用户的创造力和奇思妙想的限制。计算机将为我们提供什么样的信息流?这些机器需要和拥有什么样的硬件和软件?这些系统将如何相互作用?我们不知道。没有人。我们必须设计我们的软件来面对这种环境。这就是多媒体所面临的挑战,它与这些分散分布的应用程序在不久的将来所面临的一般挑战相似。重要的问题不是软件需要灵活和易于重新配置。我们需要能够控制、预测和修改软件的行为,这就要求我们对软件是如何配置的有一个坚定的理解和控制。我们不应该努力使系统具有无限的可扩展性——相反,我们应该努力使系统完全按照要求具有可扩展性。正是在这种背景下,我们正在设计Scout[6]系统。软件设计师一直面临着跟上对计算机日益增长的需求的挑战。软件一旦被编写出来,就会被发布到一个动态的世界。因此,成功软件的一个基本属性是它可以被改变。对此的大部分关注都放在了静态变化上……
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
The Porcupine scalable mail server Replicated invocations in wide-area systems Irreproducible benchmarks might be sometimes helpful An asynchronous distributed systems platform for heterogeneous environments Dual objects—an object model for distributed system programming
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1