Java(高阶)——操作系统
浅谈操作系统
- 冯·诺依曼体系结构
- 计算机的组成组件
- 小Tips
- 操作系统
- 概念
- 操作系统如何管理
- 操作系统的作用
冯·诺依曼体系结构
也叫普林斯顿体系结构(这个叫法不太常见),99%的程序员都知道这个体系结构是在描述一台计算机是如何构成的。我们常见的计算机比如笔记本;不经常见的如服务器,大部分都遵守冯诺依曼体系结构
计算机的组成组件
1.输入单元:键盘,扫描仪,写字板等
2.中央处理器(CPU):含有运算器和控制器等
3.输出设备:显示器,打印机
小Tips
1.这里的存储器指的是内存
2.不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入设备以及输出设备)
3.外设(输入设备以及输出设备)要输入或者输出数据,也只能写入内存或者从从内存中读取
4.所有的设备只能直接和内存打交道
操作系统
概念
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS),即内核+配套的应用程序,用通俗一点的话来说:操作系统其实就是一个搞管理的软件,一方面管理计算机的硬件设备,另一方面管理计算机的软件资源。
其实上面的图很好理解,举个例子来说,假如我们要在屏幕上输出“hello world”,我们就要现在应用程序中写下代码:System.out.printIn(“hello world”),在代码真正执行起来的时候,printIn会进入到依赖的库代码中,本质上需要操作显示器这个硬件设备来完成显示,printIn然后就会通过相关的系统调用进入到内核中来执行代码,这个内核中的代码再来执行“让显示器输出“这样的动作(内核调用显卡驱动程序,由驱动程序来具体操作显示器)
操作系统如何管理
所谓管理,核心就是两件事:描述、组织
那么如何进行描述与组织呢,就相当于在一个学校中, 校长作为管理者给做为被管理者的学生发奖学金,校长要先知道每个同学的基本信息(姓名、班级、学号、成绩)---->依赖描述。然后校长再在所有的同学信息中进行筛选,选出若干个成绩最好的同学---->依赖组织。
再举一个更加好理解的例子:上面的校长知道每个同学的基本情况这就好比是创建了一个Student类,类中包含一些需要的属性,再根据当前的数据创建一堆Student的实例---->依赖描述。然后再借助一定的数据结构,把这些Student的实例放到一起,然后再按照一定的规则来筛选---->依赖组织
操作系统的作用
1.与硬件交互,管理所有的软硬件资源(对内且对下)
2.为用户程序(应用程序)提供一个良好的执行环境(对外且对上)
文末,许下我的一个圣诞小愿望,西安加油!!!“长安”常安
Java(高阶)——操作系统相关推荐
- Java高阶代码_Java高阶语法---Volatile
背景:听说Volatile Java高阶语法亦是挺进BAT的必经之路. Volatile: volatile同步机制又涉及Java内存模型中的可见性.原子性和有序性,恶补基础一波. 可见性: 可见性简 ...
- Java高阶语法---final
背景:听说final Java高阶语法是挺进BAT必经之路. final: final关键字顾名思义就是最终不可改变的. 1.含义:final可以声明成员变量.方法.类和本地变量:一旦将引用声明为fi ...
- java 高阶函数_谈谈高阶函数给我们带来了什么。
什么是高阶函数 一句话解释的话,就是函数可以作为参数以变量的方式持有,引用,构造和使用 一些文章我随手搜的,大家可以看看,它本身的概念并不复杂. 高阶函数-廖雪峰 高阶函数-wiki 其实现在主流语言 ...
- 深入理解Java虚拟机(Java高阶读书笔记)
深入理解Java虚拟机 - JVM高级特性与最佳实践(周志明)第2版 只要看:第2章.第3章.第4章.第5章简单看一看.第六章看6.1和6.2.第7章以及第12和13章.12和13属于并发里面的补充. ...
- Java 高阶 —— native 关键字与 JNI
C/C++ 通过 jni 调用 java 类及接口 Java 通过 native 调用 C/C++ 函数: 1. JNI Java中JNI的使用详解第一篇:HelloWorld JNI:Java Na ...
- Java高阶编程——RxBus 开源,基于 RxJava 的 event bus
介绍 RxBus 是一个发布/订阅模式的事件总线,用法和 EventBus 一样简单.RxBus 基于 RxJava 开发,除了拥有和 EventBus 一样简单的事件总线机制之外,还拥有 RxJav ...
- Java高阶部分知识点汇总(四)-继承与多态
前言 前面讲了面向对象的两个特性,封装和继承.本文将面向对象的最后一个特性多态,而多态是在继承的基础上存在的. Java的引用变量有两个类型:一个是编译时的类型,另一个是运行时的类型.编译时的类型由声 ...
- Java高阶部分知识点汇总(三)-内存空间的引用
前言 在前面给大家展示的代码中,有这样一行代码 Student stu = new Student(); 这行代码创建了一个Student对象,这个对象被赋给stu变量.今天我们就来好好学习一下这行代 ...
- Java高阶部分知识点汇总(三)-基本类型的包装类详讲
前言 Java语言为8个基本数据类型都提供了对应得包装类,通过8个包装类可以把8个基本数据类型的值包装成对象使用,JDK1.5提供了自动装箱和自动拆箱功能,也就是基本类型和对应包装类可以直接互相赋值使 ...
最新文章
- 自定义类型数组的初始化
- XXX管理平台系统——项目教训
- 远程连接服务器的方法:
- 甘特图 知乎_安利!拥有这5款甘特图工具,项目管理、生产排程轻松搞定!
- javascript操作html元素CSS属性
- SpringBoot踩坑记录 Invalid bound statement (not found)引发的一些列问题
- PHP导航猫网址导航系统源码V2.4.5
- Java使用表格显示日历编程_用java图形用户界面实现: 编写一个日历程序,能实现显示日历等简单功能。...
- 关于ajax入门案例
- COVID-19知识图谱问答系统(基于REFO)
- 根据学生名单(excel文件)对QQ群成员进行统计(助教可能会需要)
- D3D游戏辅助编程开发教程
- 局域网打印机共享怎么设置_局域网共享精灵 局域网内便节共享文件和打印机...
- 小学计算机优秀说课稿ppt,【说课备考】各学科说课稿示范第7天 — 小学信息技术...
- 遗传算法适应度函数的计算原理
- 台式机win10正确安装Realtek声卡驱动后右下角的小喇叭还是有一个红差,前置耳机无法使用
- linux运行魔兽世界,暴雪内部就这么玩:Linux运行《魔兽世界》教程
- java高性能rpc,企业级rpc,zk调度,负载均衡,泛化调用一体的rpc服务框架
- 在线教育系统网页版,观看视频直播功能更多,更适合用户学习
- 【读书笔记】《能力陷阱》——改变思想从行动开始