5、系统规格、建模与早期设计阶段解析

系统规格、建模与早期设计阶段解析

1. 死锁问题与非冯·诺依曼计算模型

在系统设计中,死锁是一个棘手的问题,其产生需要满足四个条件:互斥、资源不可抢占、持有资源等待更多资源以及线程间的循环依赖。在某些情况下,这四个条件可能同时满足,而操作系统理论目前并没有通用的解决办法。对于个人电脑而言,罕见的死锁或许可以接受,但对于安全关键系统则绝对不可容忍。

为了避免考虑可能的死锁问题,研究非冯·诺依曼计算模型(MoCs)是很有意义的。而且,观察者模式在其他MoCs中也能轻松实现。由于没有一种单一的形式语言能满足所有需求,在实际设计中,我们往往需要做出妥协,可能会混合使用多种语言,具体语言的选择取决于应用领域和设计环境。

2. 计算模型的定义与分类

2.1 计算模型的定义

计算模型(MoCs)描述了执行计算的机制。通常,我们会考虑由组件构成的系统,并严格区分组件内的计算和组件间的通信,这样有助于组件在不同环境中复用,实现系统组件的即插即用。具体来说,MoCs定义了以下两个方面:
- 组件及组件内计算的组织:可能的组件包括程序、进程、函数和有限状态机等。
- 通信协议:描述组件间的通信方法,例如异步消息传递和基于会合的通信。

2.2 组件关系的图形表示

组件间的关系可以用图来表示,其中节点代表执行计算的组件,计算将输入数据流映射到输出数据流,有时会用高级编程语言实现,通常包含(可能非终止的)迭代,在每次迭代中消耗输入数据、处理数据并生成输出数据。边则表示组件间的关系。

最明显的关系是因果依赖,即许多计算只有在其他计算终止后才能执行,这种依赖通常用依赖图来表示。依赖

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值