JAVAee---计算机是如何运行的?
·
一、JavaEE 与开发环境认知
1. 什么是 JavaEE?
JavaEE(Java Platform, Enterprise Edition)是 Java 平台的企业版,用于开发大型、分布式、企业级应用程序。
- 与 JavaSE 的区别:JavaSE 是基础版,专注于桌面和基础应用;JavaEE 在其之上扩展了 Web、数据库、分布式等企业级能力。
- 核心作用:为企业级应用提供一套标准的开发规范和技术栈(如 Servlet、JSP、JDBC、Spring 等)。
2. 开发岗位与技术栈
- 后端开发:核心是 Java + 数据库 + 中间件,负责服务端业务逻辑、数据处理和接口开发。
- 全栈开发:同时掌握前后端技术,既能写服务端代码,也能写前端页面。
- 运维 / 测试:保障系统稳定运行,测试代码质量,是开发流程中不可或缺的环节。
二、计算机硬件基础
1. 计算机核心组成
一台计算机的核心硬件可以概括为 五大部件:
- 运算器:负责执行算术运算和逻辑运算(如加减乘除、与或非)。
- 控制器:指挥协调计算机各部件协同工作,是计算机的 “指挥中心”。
- 存储器:存储数据和程序,分为内存(RAM)和外存(硬盘、SSD)。
- 输入设备:向计算机输入数据(如键盘、鼠标、扫描仪)。
- 输出设备:向用户展示计算结果(如显示器、打印机)。
2. 核心硬件详解
2.1 CPU(中央处理器)
- 地位:计算机的 “大脑”,负责执行指令和处理数据。
- 核心概念:
- 核心 (Core):CPU 内部独立的运算单元,一个 CPU 可以包含多个核心(如 4 核、8 核)。
- 线程 (Thread):CPU 调度的最小单位,一个核心可以通过超线程技术模拟多个线程(如 1 核 2 线程)。
- 主频:CPU 时钟频率,单位 GHz,代表每秒执行的时钟周期数(如 3.5GHz 表示每秒 35 亿个周期)。
- 缓存 (Cache):CPU 内部的高速存储器,用于缓存高频访问的数据,提升执行效率。
- 性能关系:核心数越多、主频越高、缓存越大,CPU 性能通常越强,但功耗也会随之增加。
2.2 存储器
表格
| 存储类型 | 容量 | 速度 | 成本 | 特点 |
|---|---|---|---|---|
| 寄存器 (Register) | 极小(几字节) | 极快(与 CPU 同速) | 极高 | 存储当前正在执行的指令和数据 |
| 缓存 (Cache) | 小(几 MB~ 几十 MB) | 很快 | 高 | 缓存高频访问数据,缓解 CPU 与内存速度差 |
| 内存 (RAM) | 中(几 GB~ 几十 GB) | 快 | 中 | 临时存储运行中的程序和数据,断电丢失 |
| 硬盘 / SSD | 大(几百 GB~ 几 TB) | 慢 | 低 | 永久存储数据,断电不丢失 |
2.3 指令与指令集
- 指令 (Instruction):CPU 能识别和执行的最基本操作命令,由操作码和操作数组成(如
LOAD A表示将数据加载到寄存器 A)。 - 指令集 (Instruction Set):CPU 支持的所有指令的集合,是硬件与软件之间的接口。
- CISC(复杂指令集):指令复杂、功能强大,如 x86 架构(Intel、AMD CPU)。
- RISC(精简指令集):指令简单、高效,如 ARM 架构(手机、平板 CPU)。
- 机器码:指令的二进制表示,是计算机能直接执行的代码(如
0001110对应LOAD A)。
三、操作系统基础
1. 什么是操作系统?
操作系统(Operating System, OS)是管理计算机硬件与软件资源的系统软件,是用户和计算机硬件之间的桥梁。
- 核心作用:
- 管理硬件:CPU、内存、磁盘、网络等。
- 提供运行环境:为应用程序提供稳定的执行环境。
- 抽象硬件接口:让开发者无需直接操作硬件,通过系统调用完成任务。
2. 常见操作系统
- Windows:桌面端主流,图形化界面友好,适合个人用户和办公场景。
- Linux:服务器端主流,开源、稳定、高效,是 JavaEE 开发的首选环境(如 Ubuntu、CentOS)。
- macOS:基于 Unix,界面美观,适合前端和移动开发。
- Android/iOS:移动端操作系统,管理手机硬件和应用。
3. 操作系统的核心:进程与线程
3.1 进程 (Process)
- 定义:正在运行的程序的实例,是操作系统资源分配的基本单位(如打开的 IDE、浏览器都是一个进程)。
- 特点:
- 每个进程拥有独立的内存空间,互不干扰。
- 进程之间通信需要通过特定机制(如管道、消息队列、Socket)。
- PCB(进程控制块):操作系统用于描述进程的数据结构,包含进程 ID、状态、优先级、内存地址等信息。
3.2 线程 (Thread)
- 定义:进程内部的独立执行单元,是操作系统调度的基本单位。
- 特点:
- 一个进程可以包含多个线程,共享进程的内存空间和资源。
- 线程切换开销远小于进程切换,并发性能更高。
- 进程 vs 线程:
表格
维度 进程 线程 资源分配 独立分配 共享进程资源 内存空间 独立 共享 切换开销 大 小 通信方式 复杂(IPC) 简单(直接读写共享内存)
3.3 进程的 7 大特性(面试核心)
- 并发性 (Concurrency):多个进程可以同时执行,宏观上并行,微观上串行。
- 共享性 (Sharing):多个进程可以共享系统资源(如文件、打印机)。
- 虚拟性 (Virtual):操作系统将物理资源抽象为虚拟资源(如虚拟内存)。
- 异步性 (Asynchronism):进程的执行速度和顺序不可预知,走走停停。
- 动态性 (Dynamic):进程有创建、执行、消亡的生命周期。
- 独立性 (Independence):进程是独立的资源分配和调度单位。
- 结构性 (Structure):进程由代码段、数据段、堆栈段组成。
3.4 进程状态
进程在生命周期中会经历以下核心状态:
- 新建 (New):进程被创建,尚未分配资源。
- 就绪 (Ready):进程已分配资源,等待 CPU 调度执行。
- 运行 (Running):进程正在 CPU 上执行指令。
- 阻塞 (Blocked):进程等待某个事件(如 I/O 完成、信号),暂时无法执行。
- 终止 (Terminated):进程执行完毕或被终止,释放资源。
3.5 进程调度
操作系统会按照一定的调度算法,将 CPU 时间分配给就绪队列中的进程,常见算法:
- 先来先服务 (FCFS):按进程到达顺序分配 CPU。
- 短作业优先 (SJF):优先分配给执行时间最短的进程。
- 时间片轮转 (RR):每个进程分配固定时间片,时间片用完后切换到下一个进程。
- 优先级调度:按进程优先级分配 CPU,高优先级进程优先执行。
四、计算机核心概念拓展
1. 冯・诺依曼体系结构
现代计算机的基础架构,核心思想:
- 存储程序:程序和数据存储在内存中,CPU 自动从内存中取指令执行。
- 二进制:所有数据和指令都以二进制形式存储和处理。
- 五大部件:运算器、控制器、存储器、输入设备、输出设备。
2. 进制与数据存储
- 进制转换:计算机底层使用二进制,开发中常用十进制、十六进制。
- 二进制 → 十进制:
1011 = 1*2³ + 0*2² + 1*2¹ + 1*2⁰ = 11。 - 十六进制 → 二进制:
0xB = 1011。
- 二进制 → 十进制:
- 数据单位:
- 1 字节 (Byte) = 8 位 (bit)。
- 1 KB = 1024 B,1 MB = 1024 KB,1 GB = 1024 MB,1 TB = 1024 GB。
3. 并发与并行
- 并发 (Concurrency):多个任务在宏观上同时执行,微观上 CPU 快速切换执行(如单核心 CPU 运行多个程序)。
- 并行 (Parallelism):多个任务在物理上同时执行,需要多个核心或多个 CPU 支持(如 4 核心 CPU 同时执行 4 个任务)。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)