软件架构的控制流总结
2015-07-07 12:22
579 查看
在进行程序开发时,要从总体上对软件架构进行规划,软件架构(software architecture)包括两个aspects,control flow and data flow。这里先对typical software architecture control flow进行summarize,后续的文章将继续对data flow进行梳理和总结。这里要感谢dossier-andreas,把software architecture讲述的有清晰、有条理。让我这英语菜鸟也有机会读得懂。
1. Main program and subroutine,call and return(main函数和调用)
Command structure: Control Tree; Order of execution:Sequential.
这是一个最基础和最常见的控制流,在C、C++等几乎所有语言都支持。
2. Implicit invocation, Event Based(隐式调用)
依靠Message传递控制,主程序由无尽的控制循环构成,每次循环主程序都将Message发送给对应的模块去处理。类似windows MFC的消息机制,winmain函数中是一个大循环,用来接收消息,然后调用对应的module来处理消息。
3. [b]The Manager Model 系统管理器模型[/b]
[b]
[/b]
Commandstructure: Control Tree; Order of execution: Parallel.
这就是多进程的模型。由PCB(process control block,进程控制块)来负责存储和维护进程信息。主要由操作系统来实现Manager Model。实际上,在FPGA硬件上的并行就是一个个的process。
[b]4. [b]Emulated Parallel(模拟并行)[/b][/b]
[b][b]
[/b][/b]
[b][/b]
Command structure: Control Loop; Order ofexecution: Parallel.
这实际上是进程的实现模型(或者是进程内线程的实现模型)。时间片轮转调度,每一个循环分配给一个Module一段执行时间,就这样类似的将所有Module都推进,相当于并行执行。
参考文献:http://www.dossier-andreas.net/software_architecture
[b][/b]
1. Main program and subroutine,call and return(main函数和调用)
Command structure: Control Tree; Order of execution:Sequential.
这是一个最基础和最常见的控制流,在C、C++等几乎所有语言都支持。
2. Implicit invocation, Event Based(隐式调用)
依靠Message传递控制,主程序由无尽的控制循环构成,每次循环主程序都将Message发送给对应的模块去处理。类似windows MFC的消息机制,winmain函数中是一个大循环,用来接收消息,然后调用对应的module来处理消息。
3. [b]The Manager Model 系统管理器模型[/b]
[b]
[/b]
Commandstructure: Control Tree; Order of execution: Parallel.
这就是多进程的模型。由PCB(process control block,进程控制块)来负责存储和维护进程信息。主要由操作系统来实现Manager Model。实际上,在FPGA硬件上的并行就是一个个的process。
[b]4. [b]Emulated Parallel(模拟并行)[/b][/b]
[b][b]
[/b][/b]
[b][/b]
Command structure: Control Loop; Order ofexecution: Parallel.
这实际上是进程的实现模型(或者是进程内线程的实现模型)。时间片轮转调度,每一个循环分配给一个Module一段执行时间,就这样类似的将所有Module都推进,相当于并行执行。
参考文献:http://www.dossier-andreas.net/software_architecture
[b][/b]
相关文章推荐
- android手机web网站拨打电话几种方式
- 网站高并发 大流量访问的处理及解决方法
- 网站引用天气预报
- 浅谈web应用的负载均衡、集群、高可用(HA)解决方案
- css sprite技术 – 减少网站图片请求次数
- 关于软件系统架构的联想(一)
- Link 定制网站收藏夹图标
- JEECG第17期架构培训班15号开班啦!每期十个名额,想报名的抓紧时间啦!
- 个人站长不要把理想和青春赌到网站上
- 网站URL重写(Java UrlRewrite 的使用)
- 虚拟主机or服务器,那个更适合你的网站?
- Java 内存架构
- 微信、陌陌 架构方案分析
- 关于信息检索-倒排文件系统架构解析
- 4412开发板Android系统架构
- 大型网站架构演化
- Android 系统中 Location Service 的实现与架构
- IS上部署MVC网站,打开后ExtensionlessUrlHandler-
- java 抓取拍拍贷网站数据
- Dubbo架构设计详解