运存

计算机基础

亡梦爱人 提交于 2020-04-06 00:32:10
一、为何要学习计算机基础?       Python是一门编程语言,即通俗一点说就是语言。     程序用编程语言来写程序,最终开发的结果就是一个软件。 操作系统 是出现在硬件之上的,是用来 控制硬件的。 所以,我们开发时只需要 调用操作系统为我们提供的简单的接口 就可以了。    如上图所示,我把计算机的系统分为了上面三大块。 硬件,操作系统,应用程序 。 二、计算机硬件介绍 1. 硬件 的目的:为了运行软件给它的一些指令。我们可以优先从硬件中提取出这三个主要的东西,分别是: CPU,内存,硬盘 在计算机中,用来计算的是什么呢?当然是 CPU 了。多数CPU都有两种模式,即内核态与用户态。这里的即内核态与用户态将会在下面的内容中讲到。     CPU是人的大脑,负责运算        内存是人的记忆,负责临时存储        硬盘是人的笔记本,负责永久存储        输入设备是人的耳朵或眼睛,负责接受外部的信息传给CPU        以上所有的设备都通过总线连接,总线相当于人的神经 总线示意图 三、处理器(寄存器及内核态与用户态切换)     1.计算机的大脑是CPU,它从内存中取指令-▶解码-▶执行,然后在取指令,解码,执行,周而复始,直至整个程序被执行完成。    2. 寄存器是一个存储设备, 最快的一种存储设备 就是寄存器。 3.寄存器的分类      

计算机基础-----计算机硬件

血红的双手。 提交于 2020-04-05 20:40:26
应用程序-》操作系统-》硬件 语言是用来沟通的介质,是用来交流的。编程语言也一样,只不过编程语言是用来跟计算机交流的,是程序员跟计算机之间交流的媒介。程序员要想让计算机工作,必须知道计算机能干什么,怎么干的,这也就是我们必须学习计算机基础的原因。 程序员用编程语言写程序,最终开发出的结果就是一个软件,而软件必须运行在操作系统上才可以。 编程语言只不过是我们给操作系统一些指令而已,但真正与计算机硬件交流的并不是我们所说的编程语言,而是操作系统在给计算机硬件交流。操作系统的出现就是运行于硬件之上,来控制硬件的,是管理计算机硬件资源,控制其他程序运行并为用户提供操作界面的系统软件的集合,操作系统也是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。我们也可以直接跟计算机硬件交流,但是太麻烦了,耗时耗力,严重影响了开发的效率。操作系统的出现就是运行于硬件之上,来控制硬件的,我们开发时,只需要调用操作系统为我们提供的简单而优雅的接口就可以了。 cpu-》内存-》磁盘 cpu一个大脑,计算机的大脑,强大而又飘渺。计算机的大脑就是CPU,它从内存中取指令->解码->执行,然后再取指->解码->执行下一条指令,周而复始,直至整个程序被执行完成。 内存,一个计算机的记忆,用来临时存储的。内存就是处在cpu与硬盘之间

Java内存划分--数组内存图

我是研究僧i 提交于 2020-03-07 03:28:44
Java内存划分 5 一,栈: 存放的都是方法中的 局部变量,方法的运行一定要在栈当中。 局部变量:方法的参数,方法{}中的变量 作用域:一旦超出作用域,立刻从栈内存中消失。 二,堆: 凡是 new 出来的东西,都在堆当中 堆内存里面的东西都有一个地址值:16进制 堆里面的数据都有默认值: ​ 整数 默认为0 ​ 浮点数 默认为0.0 ​ 字符 默认为 ‘\u0000’ ​ 布尔 默认为false ​ 引用类型 默认为null 三,方法区: 存储 .class 相关信息,包含方法的信息 四,本地方法栈 与操作系统相关 五,寄存器: 与 cpu 相关 一个数组的内存图 方法信息 存储在 方法区中 运行方法就必须将 方法信息 加载到栈中,并在栈中开辟空间,存储数组名 new的时候 是在堆里面,在堆中开辟一段内存空间,编号,赋予16进制地址值。 将地址值赋给栈里面的数组名。 根据索引赋值的时候,通过数组名的地址,在堆中找到相应内存地址,按照索引递增,找到相应地址 两个数组的内存图 类比一个数组,我都懒得写了… 还是要注意压栈的问题 画这个图,实际上是为下面做铺垫 两个引用指向同一个数组 其实图里面已经可以很清楚的看到,虽然 B数组是被 A数组赋值了,但是,B数组依然能够指向内存中new出来的数组地址, 由此,不难看出,通过 数组B 一样能够改变 堆内存中的数组 实际上,是堆内存共享了

Linux 的性能调优的思路

删除回忆录丶 提交于 2020-03-06 17:39:59
原文: https://mp.weixin.qq.com/s/wjQhl5y1bmPGsOKY4CHuEw Linux操作系统是一个开源平台,在这个平台下有无数的开源软件支撑,我们常见的apache、tomcat、mysql等。最终要实现的是通过这些开源软件的支持,以最低廉的成本,达到应用最优的性能。 因此,谈到性能问题,主要实现的是Linux操作系统和应用程序的最佳结合。 01性能问题综述 系统的性能是指操作系统完成任务的有效性、稳定性和响应速度。 Linux系统管理员可能经常会遇到系统不稳定、响应速度慢等问题,例如在Linux上搭建了一个web服务,经常出现网页无法打开、打开速度慢等现象,而遇到这些问题,就有人会抱怨Linux系统不好,其实这些都是表面现象。 操作系统完成一个任务时,与系统自身设置、网络拓朴结构、路由设备、路由策略、接入设备、物理线路等多个方面都密切相关,任何一个环节出现问题,都会影响整个系统的性能。 因此当Linux应用出现问题时,应当从应用程序、操作系统、服务器硬件、网络环境等方面综合排查,定位问题出现在哪个部分,然后集中解决。 在应用程序、操作系统、服务器硬件、网络环境等方面,影响性能最大的是应用程序和操作系统两个方面,因为这两个方面出现的问题不易察觉,隐蔽性很强。而硬件、网络方面只要出现问题,一般都能马上定位。 下面主要讲解操作系统方面的性能调优思路

vscode运行 npm run build 报错:

淺唱寂寞╮ 提交于 2020-03-02 16:55:52
webpack编译报错提示内存溢出: 这个报错的意思就是Node内存不足所导致的。我们都知道 Node 是基于V8引擎,在一般的后端开发语言中,在基本的内存使用上没有什么限制。 但是,在 Node 中通过 JavaScript 使用内存时只能使用部分内存(64位系统下约为1.4 GB,32位系统下约为0.7 GB)所以不管你电脑实际内存多大,在node运行JavaScript打包编译的时候所使用的内存大小,并不会因为你系统的实际内存大小改变而改变。 window系统下解决办法: 在\node_modules\.bin\webpack-dev-server.cmd文件中添加 --max_old_space_size=2048 或者: 根据自己电脑内存大小,调整打包编译的时候所使用的内存大小 来源: oschina 链接: https://my.oschina.net/u/4276394/blog/3185286

虚拟内存

孤人 提交于 2020-02-28 12:46:12
手动设置虚拟内存 在默认状态下,是让系统管理虚拟内存的,但是系统默认设置的管理方式通常比较保守,在自动调节时会造成页面文件不连续,而降低读写效率,工作效率就显得不高,于是经常会出现“内存不足”这样的提示,下面就让我们自已动手来设置它吧。 ①用右键点击桌面上的“我的电脑”图标,在出现的右键菜单中选“属性”选项打开“系统属性”窗口。在窗口中点击“高级”选项卡,出现高级设置的对话框 ②点击“性能”区域的“设置”按钮,在出现的“性能选项”窗口中选择“高级”选项卡,打开其对话框。 ③在该对话框中可看到关于虚拟内存的区域,点击“更改”按钮进入“虚拟内存”的设置窗口。选择一个有较大空闲容量的分区,勾选“自定义大小”前的复选框,将具体数值填入“初始大小”、“最大值”栏中,而后依次点击“设置→确定”按钮即可,最后重新启动计算机使虚拟内存设置生效。 转自:百度知道 http://baike.baidu.com/view/976.htm 虚拟内存是计算机系统 内存管理 的一种技术。它使得 应用程序 认为它拥有连续的可用的 内存 (一个连续完整的 地址空间 ),而实际上,它通常是被分隔成多个 物理内存 碎片,还有部分暂时存储在外部 磁盘存储器 上,在需要时进行 数据交换 。 目录 简介 作用 虚拟内存不足的原因 1、感染病毒 2、虚拟内存设置不当 3、系统空间不足 4、因为SYSTEM用户权限设置不当

电脑选购指南

人走茶凉 提交于 2020-02-27 14:20:18
电脑主要硬件配置就是CPU、显卡、内存、硬盘、屏幕等,其中CPU和显卡是本文的讲解重点。 CPU 现在我们能买到的主流CPU基本上都是英特尔和超威半导体的。也就是我们常说的Intel和AMD。 对于个人消费领域,AMD最常见的是锐龙、AMD FX、APU、速龙和闪龙系列,一般认为他们的性能依次减弱,锐龙最强,随后分别是AMD FX、APU和速龙,闪龙最弱。 由于市场大环境下,Intel在笔记本市场占据着绝对老大的位置,所以本文以Intel CPU做以详细讲解,也是为了更多想学习的朋友先了解下最主流的配置,并无黑AMD的意思,请A粉理解。 目前Intel CPU 酷睿系列的命名规则如下,也是目前笔记本最常见的CPU品牌。 在性能能上,同等代数的情况下i7>i5>i3,例如都是同样的八代CPU,i7-8700>i5-8600>i3-8100,这是因为Intel公司在规划设计上的定位,把i7作为高端,i5作为主流,i3作为入门。 在性能上,同系列产品,代数越高一般性能越强,例如同样都是酷睿i5,i5-7600>i5-6600,这是因为每一代使用的构架(可以理解为科技含量)不同,当然工艺也会有所差异,简单说代数越大即越新,使用的构架是当前最先进的构架,所以代数越大性能越强,当然也是会有特殊情况的有的上一代的高端产品,会比本代的入门产品要强点的,俗话说的好“瘦死骆驼比马大”比如i5-6600

java Runtime中maxMemory,totalMemory, freeMemory的含义

限于喜欢 提交于 2020-02-26 17:23:16
maxMemory是指当前虚拟机最大可以使用的内存,对于jvm配置的xmx参数 totalMemory指的是当前虚拟机运行时所使用的内存,如果在虚拟机启动时,配置了xms参数,那么当前虚拟机初始使用的内存为配置的数值,之后会随着项目运行而增加,最大可以增加至maxMemory freeMemory是指当前虚拟机已经申请到但是没有在使用的内存,产生没有使用的内存的情况有两种: 1、配置了xms参数,比如配置了1G的xms,那边jvm启动时,就已经申请了1G的内存,而程序运行如果只用了0.5G内存,那么freeMemory就是1-0.5=0.5G 2、程序运行时,会随着需要逐步从操作系统申请内存,并且申请的量会比需要的量多一些,因此会产生freeMemory,这个数值一般较小 来源: https://www.cnblogs.com/yytxdy/p/12367709.html

Linux性能调优的优化思路

空扰寡人 提交于 2020-02-25 16:03:37
Linux操作系统是一个开源产品,也是一个开源软件的实践和应用平台,在这个平台下有无数的开源软件支撑,我们常见的有apache、tomcat、nginx、mysql、php等等,开源软件的最大理念就是自由、开放,那么Linux作为一个开源平台,最终要实现的是通过这些开源软件的支持,以低廉的成本,达到应用最有的性能。因此,谈到性能问题,主要实现的是Linux系统和应用程序的最佳结合。 博文大纲: 一、性能问题综述 二、影响Linux性能的因素 三、分析系统性能设计的人员 四、调优总结 一、性能问题综述 系统的性能是指操作系统完成任务的有效性、稳定性和响应速度。Linux系统管理员会经常遇到系统不稳定、响应速度慢等问题,例如在Linux上搭建了一个web服务,经常会出现网页打不开、打开速度慢等现象,而遇到这些问题,就会有人抱怨Linux系统不好,其实这些都是表面现象。操作系统完成一个任务时,与系统自身设置、网络拓补结构、路由设备、路由策略、接入设备、物理线路等多个方面都紧密相关,任何一个环节出现问题,都会影响整个系统的性能。因此当Linux应用出现问题是,应当从应用程序、操作系统、服务器硬件、网络环境等方面综合排查,定位问题出现在那个部分,然后集中解决。 在应用程序、操作系统、服务器硬件、网络环境等方面。影响性能最大的是应用程序和操作系统两个方面,因为这两个方面出现的问题不易察觉

虚拟内存(摘自百度百科)

喜你入骨 提交于 2020-02-25 07:06:11
虚拟内存是计算机系统 内存管理 的一种技术。它使得 应用程序 认为它拥有连续的可用的 内存 (一个连续完整的 地址空间 ), 而实际上,它通常是被分隔成多个 物理内存 碎片,还有部分暂时存储在外部 磁盘存储器 上,在需要时进行 数据交换 。 简介 别称虚拟存储器(Virtual Memory)。电脑中所运行的程序均需经由 内存 执行,若执行的程序占用内存很大或很多,则会导致内存消耗殆尽。为解决该问题, Windows 中运用了虚拟内存 [1] 技术,即匀出一部分硬盘空间来充当内存使用。当内存耗尽时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。若计算机运行程序或操作所需的 随机存储器 ( RAM )不足时,则 Windows 会用虚拟存储器进行补偿。它将计算机的RAM和 硬盘 上的临时空间组合。当RAM运行速率缓慢时,它便将数据从RAM移动到称为“ 分页 文件”的空间中。将数据移入分页文件可释放RAM,以便完成工作。 一般而言,计算机的RAM容量越大,程序运行得越快。若计算机的速率由于RAM可用空间匮乏而减缓,则可尝试通过增加虚拟内存来进行补偿。但是,计算机从RAM读取数据的速率要比从硬盘读取数据的速率快,因而扩增RAM容量(可加内存条)是最佳选择。    虚拟内存不足的成因   【1】、 感染病毒 :有些病毒发作时会占用大量内存空间,导致系统出现 内存不足 问题。   【2】