面试:什么是操作系统、JDK&JVM&JRE的区别、线程与进程的区别

简单的了解下操作系统

操作系统是管理计算机硬件和软件资源的系统软件,同时也是计算机系统的内核和基石,它为计算机程序提供公共服务。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。操作系统的类型非常多样.
操作系统作用:操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。以现代标准而言,一个标准PC的操作系统应该提供以下的功能:

1、进程管理。又称处理器管理,其主要任务是对处理器的时间进行合理分配、对处理器的运行实施有效的管理。

2、存储器管理。由于多道程序共享内存资源,所以存储器管理的主要任务是对存储器进行分配、保护和扩充。

3、设备管理。根据确定的设备分配原则对设备进行分配,使设备与主机能够并行工作,为用户提供良好的设备使用界面。

4、文件管理。有效地管理文件的存储空间,合理地组织和管理文件系统,为文件访问和文件保护提供更有效的方法及手段。

5、用户接口。用户操作计算机的界面称为用户接口(或用户界面),通过用户接口,用户只需进行简单操作,就能实现复杂的应用处理。

简单的说下进程与线程的区别

进程是正在运行的程序的一个实例。线程是程序(进程)的实际活动单位,是操作系统能调度运算的最小单位。
一个进程至少包含一个线程(主线程)。
而多线程则:
一个进程,多个线程存在。例如:边听歌,边搜索。提高了CPU的利用率。
多个线程共享,操作系统为进程分配的空间。

简单的认识JDK、JRE、JVM的区别与联系

JDK:java开发工具包,适用于开发者
JRE:包含JVM标准实现及Java核心类库。JRE是Java运行环境,适用于用户
JVM:即java虚拟机, java运行时的环境,可运行.class文件
三者的区别和联系:
1.三者联系:
JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。

2.三者区别:
a.JDK和JRE区别:在bin文件夹下会发现,JDK有javac.exe而JRE里面没有,javac指令是用来将java文件编译成class文件的,这是开发者需要的,而用户(只需要运行的人)是不需要的。JDK还有jar.exe, javadoc.exe等等用于开发的可执行指令文件。这也证实了一个是开发环境,一个是运行环境。
b.JRE和JVM区别:JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值