Run-time system与虚拟机
一个Run-time系统,由一个执行引擎(Execution Engine)、一个机器级的调试器(Debugger)、一个汇编器(Assembler)和与之配套的开发工具(Tools)组成。
标准操作过程(SOP,Standard Operating Procedure):声明一个命题,进行论证,提供例子。即proposition-proof-example。
本课题适合系统工程师
建立虚拟机需要满足三个准则:
1)可移植性
可移植性是最重要的特征,它使得应用可工作于一致的工作界面,运行于多个平台。
2)简单性
3)性能
符号习惯
数字常量采用标准C编程语言的习惯。
十进制数总是以数字1~9开头,如:214159
十六进制以0x或0X前缀开始,如:0xA5
八进制数以0开始,如:0644
1 byte = 8 bits
1 word = 2 bytes
1 double word = 4 bytes
1 quad word = 8 bytes
1 paragraph = 16 bytes
1 kilobyte = 1024 bytes
1 megabyte = 1024KB
1 gigabyte = 1024MB
1 terabyte = 1024GB
A Run-time system is an environment in which programs execute.
A Run-time system provides everything a program needs in order to run.
Run-time system 负责:分配内存给应用程序、载入应用程序到所分配的内存空间、帮助程序指令的执行。
如果应用程序通过系统调用请求下面的操作系统的服务,则Run-time system负责处理这些服务请求。
例如:某程序想执行I/O操作,则Run-time system必须提供一个机制,实现与磁盘控制器通信,并提供读/写访问。
有几种不同的Run-time system。
A virtual machine is a software program that acts like a computer. It fetches and executes instructions just like a normal processor.
A virtual machine also usually contains facilities to manage the path of execution and to offer an interface to services normally provided by the native operating system.
虚拟机通过JVM规范来定义。一个虚拟机不是特殊的软件实现,而是一套规则集。
一个虚拟机能在任意平台以任意编程语言实现,只要它满足规范。
要注意,所有的虚拟机都是Run-time system,但并非所有的Run-time system都是虚拟机。