软件架构的控制流总结
来源:互联网 发布:软件模块测试报告 编辑:程序博客网 时间:2024/05/18 02:56
在进行程序开发时,要从总体上对软件架构进行规划,软件架构(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. The Manager Model 系统管理器模型
Commandstructure: Control Tree; Order of execution: Parallel.
这就是多进程的模型。由PCB(process control block,进程控制块)来负责存储和维护进程信息。主要由操作系统来实现Manager Model。实际上,在FPGA硬件上的并行就是一个个的process。4. Emulated Parallel(模拟并行)
Command structure: Control Loop; Order ofexecution: Parallel.
这实际上是进程的实现模型(或者是进程内线程的实现模型)。时间片轮转调度,每一个循环分配给一个Module一段执行时间,就这样类似的将所有Module都推进,相当于并行执行。
参考文献:http://www.dossier-andreas.net/software_architecture
- 软件架构的控制流总结
- 高焕堂老师软件架构的讲座总结
- 软件架构的数据流总结(一)
- 软件架构的数据流总结(二)
- 软件架构的数据流总结(三)
- VC++远程控制软件的通信架构与源码分析
- VC++远程屏幕控制的分析1----软件初始架构
- 软件体系架构总结
- 软件架构总结
- MINItest软件架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 基于java技术的软件开发架构总结
- 高仿网易评论列表效果之界面生成
- 图像的泊松(Poisson)编辑、泊松融合完全详解(3) ——完结篇
- C++纯虚函数 virtual =0
- 杭电题分类
- ShellExecute使用详解
- 软件架构的控制流总结
- 线性代数MIT-2、求解线性方程组
- CSS3制作苹果手机的Message图标,超强大
- 《猜猜看》游戏的开发总结
- 动态链接库丢失的解决方法(这是什么原理)
- 初识Mysql
- The specified child already has a parent. You must call removeView() on the child's parent first.
- 2012年5月SAT香港真题解析
- start_kernel——setup_per_cpu_areas