操作系统:
1.软件的运行环境指的是什么?
1)操作系统
2)硬件(如CPU的时钟频率等等)
2.Windows的应用程序能够在Linux下运行吗?
不能,API的不同,各个操作系统都有自己独有的API
=>需要将代码三次编译,编译得到的就是本地代码
概念补充:本地代码:在文本下写入的一些特定的字符
文本->软件:对源代码通过编译器进行编译,得到本地代码(机器语言)
3.Java虚拟机是什么原理?(见3.2)
伟大的操作系统:
1.克服硬件差异
2.提供统一接口
1)一次编写,处处编译
=>源代码不变,可以编译出三种可运行程序,是因为:在源代码中添加东西,从而通过判断当前的系统,然后 选择使用该系统的API
4.交叉编译:
在Windows系统的条件下,通过Linux的编译器编译出适合Linux(可以在Linux下运行的)的程序
1)做硬件自检
2)磁盘引导:运行操作系统这个软件,会在指定磁盘运行操作系统
1.软件的运行环境指的是什么?
1)操作系统
2)硬件(如CPU的时钟频率等等)
2.Windows的应用程序能够在Linux下运行吗?
不能,API的不同,各个操作系统都有自己独有的API
=>需要将代码三次编译,编译得到的就是本地代码
概念补充:本地代码:在文本下写入的一些特定的字符
文本->软件:对源代码通过编译器进行编译,得到本地代码(机器语言)
3.Java虚拟机是什么原理?(见3.2)
伟大的操作系统:
1.克服硬件差异
一开始,因为兼容问题,一个软件只能保证在一台计算机上运行,换一台计算机,就需要重新书写
=>软件流通困难
=>出现MS-DOS
=>本质是一个软件,提供了一个壳,这个壳包含了各种各样的计算机,写软件时,只要符合这个壳的规 范,能够与其交互,就可以在所有的运行MS-DOS的计算机上运行
2.提供统一接口
提供了标准化的东西:API
=>软件通过调用API可以与硬件进行通信( 软件通过调用硬件起作用)
1)一次编写,处处编译
=>源代码不变,可以编译出三种可运行程序,是因为:在源代码中添加东西,从而通过判断当前的系统,然后 选择使用该系统的API
2)操作系统是一层壳,还可以在此之上加一层壳,使其内包含三种系统,得到统一API
=>可以做到一次编译,处处可用(伪跨平台如JAVA .net)
3)引自同学菠萝:
=>
Java虚拟机的原理就是在操作系统之上, 又加了一层.
说白了就相当于一个专门为Java语言运行的小操作系统.
号称跨平台, 其实是伪跨平台.
4.交叉编译:
在Windows系统的条件下,通过Linux的编译器编译出适合Linux(可以在Linux下运行的)的程序
5.BIOS及引导
BIOS:存储在主板中1)做硬件自检
2)磁盘引导:运行操作系统这个软件,会在指定磁盘运行操作系统