JAVAEE---计算机是如何组成的

计算机=软件+硬件

硬件是冯诺依曼体系结构,这个结构的精髓在于将存储和执行分开。

这里存储器=内存+外存(硬盘,u盘,光碟等)

cpu是计算机的大脑,是计算机最核心的地方。

cpu中央处理:进行算术运算和逻辑判断。

存储空间

硬盘>内存>>cpu

访问速度与之相反。

cpu的基本架构

x86架构 inter amd

arm架构 苹果 高通(性能比较低,但待机时间长)

不同架构的cpu的指令集是不同的(指令集写死在cpu中)

cpu是通过门电路构成的。

多核cpu

cpu的核心:一个核心相当于一个完整的cpu,将这些核心放到一起组成一个大的cpu。

这里多个核心都要使用需要软件的配合,将一个大任务分成多个小任务来执行。

一个cpu当两个用(超线程技术)

比如我这个电脑内核就是物理核心,是真实存在的。

逻辑处理器就叫做逻辑核心,我们使用可以认为有16个核心。

你可能会发现自己的电脑,物理核心和逻辑核心不是二倍的关系,这是因为大小核技术,大核代表两个逻辑核心,小核就是一个。

频率:描述cpu性能除了核心数还有频率

我们关注这里的速度和基准速度就行

基准速度就是基础频率,速度就是当前的频率也叫睿频

3.20GHz代表一秒钟可以执行32亿次的指令

基准速度是单核每秒最少执行次数,是下限

睿频是动态变化的,它取决于当前任务的多少。是上限

指令

首先指令是在内存中的,cpu从内存中不断获取指令,解析,执行。

获取指令相比其他两个来说比较耗时,所以就使用缓存,流水线这样的操作来进行处理

解析就要用到我们上面说的指令集。

操作系统

上面说cpu是硬件的核心,那操作系统就是软件的核心

对下将硬件进行管理

对上给软件提供一个稳定的运行环境

这两条都是通过抽象,封装进行完成的,比如我们现在的一个个的问价就是对硬盘进行的抽象封装。

常见的操作系统有Windows,Linux(程序猿必备),Mac,iOS,Android。

进程

进程是系统分配资源的基本单位

操作系统对进程描述(pcb),管理(链式结构,不是一条,一组,比较复杂)

pcb中的一些属性

pid:身份标识

内存指针(一组):用来描述申请到的是哪些空间,来进行使用。

文件描述符表:当我们打开文件的时候要进行一个描述,记录

cpu:进程使用占cpu时间的比例

        并发:其中包含并发和并行,并发是分时复用,描述一个核心上的变化,并行是多个核心同时执行,不过我们一般统称并发。

状态:就绪状态,阻塞状态

就绪状态就是随时可以调用,阻塞状态不应该被调用,例如,等待用户输入

优先级:进程调用的时间顺序都不是均匀的。

记账信息:用来对下一下调度的一个更改。

上下文:如果进程执行中被切换,应该将寄存器中一些值保存起来,下次调用的时候,在还给寄存器。

这里的保存就是存档,还给寄存器就是读档

当进程未执行的时候其实并不是都在内存中,而是在硬盘的swap区域,再次调用时直接从硬盘加载到内存中。防止内存不够。 

进程之间独立运行,互补干扰,但有时我们需要它们的数据进行交互,这就谈到了进程间通信,例如:文件,网络

多线程---解决进程频繁创建销毁带来的开销

系统调度执行的基本单位

进程包含线程,每个线程是一条独立的执行流,可以单独对cpu进行调度所以状态,上下文,等都是每个线程由自己的一份。而它们的内存和文件描述符表,共用一份,就是进程的一份。多个进程之间互不影响,但一个进程中的多个线程会相互影响。一个线程挂掉,或者将数据弄坏了,会影响其他线程的进行。线程不易过多,过多让然会使调度开销过大。

多线程编程

好像和之间输入结果没有什么区别但其实区别很大,我们后面再来讨论。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/164204.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ESP32 Arduino实战协议篇-搭建独立的 Web 服务器

在此项目中,您将创建一个带有 ESP32 的独立 Web 服务器,该服务器使用 Arduino IDE 编程环境控制输出(两个 LED)。Web 服务器是移动响应的,可以使用本地网络上的任何浏览器设备进行访问。我们将向您展示如何创建 Web 服务器以及代码如何逐步工作。 项目概况 在直接进入项目…

03. Python中的语句

1、前言 在《Python基础数据类型》一文中,我们了解了Python中的基础数据类型,今天我们继续了解下Python中的语句和函数。 2、语句 在Python中常用的语句可以大致分为两类:条件语句、循环语句。 2.1、条件语句 条件语句就是我们编码时常见…

Redis篇---第八篇

系列文章目录 文章目录 系列文章目录前言一、说说 Redis 哈希槽的概念?二、Redis 常见性能问题和解决方案有哪些?三、假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?前言 前些天发现了一个巨牛的人工智能学习网站…

基于世界杯算法优化概率神经网络PNN的分类预测 - 附代码

基于世界杯算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于世界杯算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于世界杯优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络…

Linux基础全整理 从入门到放弃,一些想说的话

阅读目录 断更后一些想说的话用户useraddpasswdpasswd文件详解 chageusermoduserdelshadow 文件格式切换用户 用户组groupaddgroup文件格式groupmodgroupdel登陆远程机器 磁盘RAIDraid0(安装系统)raid1(存放数据)raid 5&#xff0…

Prompt 编程的优化技巧

大家好,我是木川 一、为什么要优化 一)上下文限制 目前 GPT-3.5 以及 GPT-4最大支持 16K 上下文,比如你输入超过 16k 的长文本,ChatGPT 会提示文本过大,为了避免 GPT 无法回复,需要限制 上下文在16k 以内 上…

【数据结构算法(一)】递归篇(常见实例讲解)

🌈键盘敲烂,年薪30万🌈 ⭐本篇讲解实例: 斐波那契、兔子问题、猴子吃桃问题、跳台阶问题、汉诺塔、杨辉三角 ⭐用到的递归思想: 无记忆递归、记忆递归(重点掌握) 目录 一、斐波那契: ①无记忆多路递归&am…

重生奇迹mu转职任务详解

重生奇迹mu神骑士怎么转 神骑士是一种转职类型,需要你的角色达到一定等级以及完成相应任务方可转职。以下是神骑士转职的具体步骤: 1.等级要求:首先,你的角色需要达到150级才能进行神骑士转职任务。 2.神骑士转职任务&#xff…

十七、Linux的组管理

1、Linux组基本介绍 在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件所有者、所在组、其它组的概念 1.所有者 2.所在组 3.其他组 4.改变用户所在的组 2、文件/目录 所有者 一般为文件的创建者,谁创建了该文件,就自…

卷积、卷积图像操作和卷积神经网络

好多内容直接看书确实很难坚持,就比如这个卷积,书上的一大堆公式和图表直接把人劝退,我觉得一般的学习流程应该是自顶向下,先整体后局部,先把握大概再推敲细节的,上来就事无巨细地展示对初学者来说很痛苦。…

【机器学习12】集成学习

1 集成学习分类 1.1 Boosting 训练基分类器时采用串行的方式, 各个基分类器之间有依赖。每一层在训练的时候, 对前一层基分类器分错的样本, 给予更高的权重。 测试时, 根据各层分类器的结果的加权得到最终结果。 1.2 Bagging …

Linux | 信号

目录 前言 一、信号基础概念 1、生活中的信号 2、Linux中的信号 二、信号的产生 1、接口介绍 2、信号产生的方式 (1)终端按键的方式产生信号 (2)系统调用接口 a、kill b、raise c、abort (3&#xff09…

【LeetCode刷题-滑动窗口】--992.K个不同整数的子数组

992.K个不同整数的子数组 思路: class Solution {public int subarraysWithKDistinct(int[] nums, int k) {return atMostKDistinct(nums,k) - atMostKDistinct(nums,k-1);}//最多包含K个不同整数的子区间个数private int atMostKDistinct(int[] a,int k){int len …

【MATLAB源码-第83期】基于matlab的MIMO中V-BALST结构ZF和MMSE检测算法性能误码率对比。

操作环境: MATLAB 2022a 1、算法描述 在多输入多输出(MIMO)通信系统中,V-BLAST(垂直波束形成层间空间时间编码技术)是一种流行的技术,用于提高无线通信的数据传输速率和容量。它通过在不同的…

PS 颜色取样器标尺工具 基本使用讲解

上文 PS 吸管工具基本使用方法 我们讲完了 吸管工具 那么 我们继续 打开ps先 接着 我们选择这个 颜色取样器工具 选择之后 我们鼠标在图像上随便点一下 就会出现一个标记 然后 我们可以点多几个地方 边上的信息面板就会输出 点1 和 点2 甚至 多个 点3 点4 的 颜色 RGB代码 …

Python学习(一)基础语法

文章目录 1. 入门1.1 解释器的作用1.2 下载1.3 基础语法输入输出语法与引号注释:变量: 数据类型与四则运算数据类型四则运算数据类型的查看type()数据类型的转换int()、int()、float() 流程控制格式化输出循环与遍历逻辑运算符list遍历字典dict遍历 跳出…

JavaspringbootMYSQL基于移动端的团购网站26449-计算机毕业设计项目选题推荐(附源码)

目 录 摘要 1 绪论 1.1 选题背景 1.2选题目的及意义 1.3springboot框架介绍 2 基于移动端的团购网站系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分析 2.5本章…

labelimg报错IndexError: list index out of range

labelimg报错IndexError: list index out of range 问题:标签顺序不对,修改classes.txt文件。每次重新打开labelimg就会重置classes.txt文件,同时其中不正确的标签顺序,会导致所画的框图范围超出图片大小而报错,因此也…

基于吉萨金字塔建造算法优化概率神经网络PNN的分类预测 - 附代码

基于吉萨金字塔建造算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于吉萨金字塔建造算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于吉萨金字塔建造优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&a…

维修一款20年前的电容测试表VC6013

一、大概情况 在咸鱼市场淘了一台VC6013电感测试表,本来想捡漏的,结果发现是一个大坑,不但被人维修过,还发现被拆了一些ic,网络上也找不到合适的图纸,只找到一份比较接近的图纸,但是比较下来还是…
最新文章