-
2019-12-04 09:46:12
本文来自于AUTOSAR技术资料。
前言
功能安全(Functional Safety)是一项系统特性,由于基于功能安全的设计会影响到系统设计,所以从系统开发初始阶段就要进行考虑。由于软件的复杂度会影响 到功能安全的设计,所以在AUTOSAR规范中,包含了部分与功能安全相关的需求,这些新技术和概念能够帮助降低功能安全相关组件的复杂度。不过需要强调的是,AUTOSAR虽然通过提供安全措施和机制来支持基于功能安全产品开发,但这些独立的安全措施(Safety Measure)并不能形成整体的安全解决方案。
在功能安全标准(ISO 26262 2018, Part 6)中,提到了要避免软件相关元素之间干扰(Freedom from Interference between software elements)。软件之间的相互干扰主要集中在软件的执行时间(Timing),软件间的死锁(Dead locks,Live locks),内存使用(Memory),信息交换(Information Exchange)。
本文主要介绍一下AUTOSAR规范中对于软件内存分区的保护措施。
1 失效模式
基于组件化设计的嵌入式系统中,通常会同时包含不同ASIL等级的功能安全相关组件(包括非功能安全相关的组件)。低ASIL等级的软件组件有可能会以错误的方式读写高ASIL等级的软件组件。如果不同的软件组件能够在不同的内存分区中执行,则可以避免产生内存访问相关的影响。
这篇文章中介绍了AUTOSAR OS和RTE的部分功能,这些功能用于支持多个SWC在不同的内存分区中执行,用于避免内存异常访问。
根据ISO 26262 Part 6,内存相关的异常访问分类如下:- 内容的破坏(Corruption of Contents)
- 读写其它组件的分配管理的内存空间
AUTOSAR中提供的内存分区(Memory Partitioning)机制通过限制访问内存及基于内存映射的硬件(如Flash,Register)等,支持内存使用的保护。
内存分区意味着把不同的OS-Application部署于不同的内存区域,这样,特别是代码执行时,一个分区内的代码无法修改另一个分区的内存数据。而且,内存分区还可以保护只读的区域(如代码段)。
AUTOSAR的内存分区和用户/特权机制相关的特性,可以支持软件组件之间的FFI,如SWC内存相关的错误不会扩散到其它的软件组件,同时,处于用户态的SWC也无法修改或重新配置CPU内部的寄存器。2 内存分区机制介绍
内存分区是AUTOSAR OS和RTE的一个扩展机制,这在AUTOSAR相关的规范中有描述。在这篇文章中,会以在AUTOSAR方法论中提到的Runnable,Tasks,SWC和OS-Application之间上下文关系的形式介绍这个扩展机制。
2.1 应用程序(Application Software)
在AUTOSAR架构中,应用程序位于RTE之上的,并且包含一组内部存在信息交换的软件组件(SWC),这些软件组件实现一系列的原子功能(不可拆分),组合在一起实现应用程序的功能。
AUTOSAR的SWC与硬件无关,所以这些SWC可以集成在任何ECU的硬件上。为了实现ECU内(Inter-)和ECU间(Intra-)通信,AUTOSAR SWC仅通过RTE进行通信(Exclusively)。
AUTOSAR SWC包含一系列的功能实现和变量定义,通过这些提供内部的功能实现。这些功能实现和变量定义对于外部是不可见的,仅能通过公布的RTE接口使用。
AUTOSAR SWC也提供了函数接口,但只能在运行时调用。这些C语言的函数在AUTOSAR中被叫做Runnable。Runnable不能主动执行,而是通过配置的形式,分配到某个位于操作系统中的可执行的实体上,比如,作为一个OS-Task调用的代码段。
Runnable以周期性执行或者以外部触发的形式在OS-Task的上下文中执行。从分配的角度来看,一个SWC可以由多个Runnable构成,一个OS-Task可以触发多个Runnable(同一个SWC内的Runnable可以在不同的OS-Task上执行),一个OS-Application可以管理多个OS-Task,而OS-Application和内存分区(Partition)之间,是一对一的关系。2.2 OS-Application
AUTOSAR的OS-Application是操作系统对象的集合体,其中包括任务 (Tasks),中断服务程序 (ISRs),调度表 (Schedule Tables),计数器 (Counters)和警报 (Alarms),这些对象构成一个内聚的功能单元。在一个OS-Application内的各个对象可以互相访问。
操作系统内的在同一个OS-Application内的对象,可以分属于不同的SWC。RTE实现了一段内存空间,为这些在同一个OS-Application内的对象相互访问,提供了不受限的通信支持。
OS-Application可以分为2类:- 受信任 (Trusted)的OS-Application可以不受那些运行时的监控 (Monitoring)或者保护 (Protection)特性的限制执行。这类应用可以不受限的访问内存和操作系统API。受信任的应用对于执行时间上也不受限制,同时也可以在任何支持的处理器上以特权模式执行。
- 不受信任 (Non-trusted)的OS-Application不可以在运行时监控及保护机制关闭的时候执行。这类应用在访问内存、操作系统API时都有限制,同时也不允许以特权模式执行。
2.3 通信与代码共享
一个OS-Application可以包含多个SWC及相关的Runnable。Runnable只允许直接访问SWC内部的变量和函数。内部的函数调用及变量访问对于其它SWC来说是不可见的,主要原因是这些函数及变量在SWC相关的头文件中根本就没有声明。这也说明,AUTOSAR标准并不期望从其它的SWC中直接通过变量访问及直接的执行另一个SWC内部的代码。AUTOSAR中,SWC之间,仅允许基于RTE进行组件间的通信。
2.4 应用 (Application Software)内的内存分区
基于AUTOSAR开发的ECU内部可以包含功能安全相关与功能安全无关的SWC。ISO 26262要求不同的ASIL等级的软件组件之间要避免相互干扰 (Freedom from interference)。
AUTOSAR操作系统通过将OS-Application放置于独立的内存区域内,实现避免内存相关的干扰。这个机制叫做内存分区 (Memory Partitioning)。一个OS-Application不能直接修改另一个OS-Application的内部数据,从而实现相互之间的保护。
应用软件可以包含不同等级的SWC,但这些SWC不能分配到同一个OS-Application内。内存分区无法对位于同一个OS-Application内部的SWC提供保护。操作系统也只能阻止OS-Application间的非法访问,无法阻止一个有故障的SWC访问位于同一个OS-Application内的其它SWC的数据。2.5 SWC内部的内存分区
可能会有一些SWC有在内部包含不同ASIL等级的Runnable的需求,这就要求避免相互干扰的机制要在这些SWC之间进行。但在Runnable的设计上来说,是属于SWC的属性,但一个SWC只能分配到一个OS-Application上,所以基于OS-Application的内存分区机制无法保障一个SWC内部的不同等级的Runnable之间相互干扰。这个特性就需要AUTOSAR操作系统支持Task之间的内存分区,因为Runnable是在某个Task上调用执行的。(目前还不确定是否有AUTOSAR OS支持这个特性)
2.6 实现内存分区
大量的系统及软件级的TSC (Technical Safety Concept)可以使用内存分区机制来实现。
通常BSW位于受信任 (Trusted)区域,部分SWC可以和BSW一样在受信任区域,以管理 (Supervisor)权限运行。其它的内存区域可以划分为多个内存分区,每个内存分区内可以有一个或多个SWC以用户态运行。
现代的安全相关的微处理器通常都在硬件级别上支持内存分区机制,这主要是通过内存保护单元 (Memory Protection Unit, MPU)来实现的。
在一个典型的MPU实现中,不受信的应用也可以配置为访问多个内存区域。访问的方式可以是读、写、执行及这些的组件。针对MPU的配置要用管理权限。
MPU的保护可以针对内存、Flash及外设进行。另外,使用内存分区的可能场景有如下几个:- SWC位于同一个内存分区中
× 位于同一个内存分区中的SWC可以相互访问内部数据,进而可以造成内部数据破坏
× 标准定义SWC不能直接访问外设,因为处理器的架构对于SWC来说不透明。如果强行使用SWC访问外设,这会导致系统严重的安全风险 - SWC位于不同的内存分区中
× 位于不同内存分区的的SWC不可以相互访问内部数据,也就不能破坏其它SWC的数据了
× 标准定义SWC不能直接访问外设,因为处理器的架构对于SWC来说不透明。如果强行使用SWC访问外设,这会导致系统严重的安全风险 - MCAL驱动程序
× MCAL驱动是一系列函数集合,如读、写及初始化等。这类接口必须在BSW或CDD中执行
× MCAL驱动可以访问外设空间,根据不同的处理器实现,可能会需要管理权限
3 检测与响应
内存分区的安全机制通过限制访问内存及支持内存映射的外设的方法来实现保护。一块分区内的代码,无法修改另一个分区的数据。内存分区也支持只读方式的访问,这个可以用来保护那些基于内存映射访问的硬件。SWC也可以被限定为禁止访问CPU的寄存器,如重新配置等。
在支持MPU或MMU的硬件上使用内存分区机制,操作系统要事先进行合理的配置来检测和阻止不正确的内存访问。一旦出现了在非受信区域的内存访问或者执行了不合法的CPU指令,这些访问首先会被阻止,然后处理器硬件会产生一个异常 (Exception)。操作系统和RTE会处理这些异常,执行内存分区的关闭 (Shutdown),或重启分区内的所有SWC的动作。4 限制条件
- 如果分区内的SWC都设置为相同的ASIL等级,则不需要按照ISO 26262中要求的FFI来设计安全机制。同时,对于OS-Application,可以包含多个SWC,但内存分区的关闭或重启机制是针对整个分区进行,所以即使状态正常的SWC也会受到影响
- 内存分区机制不适用于受信任的OS-Application,受信区域中的代码执行不会被保护机制监控
- Task级的内存保护不是AUTOSAR的强制标准,所以OS-Application内部的FFI可能
- 内存分区会带来性能上的影响。由于增加了内存分区,会导致上下文的切换增多
- BSW的软件不支持内存分区,所以才会有Safe BSW的方案。
更多相关内容 -
计算机中的操作系统的主要功能是什么
2021-07-15 02:44:55满意答案b131452000推荐于 2019.05.20采纳率:45%等级:6已帮助:304人操作系统的主要作用操作系统的主要功能是资源管理,程序控制和人机交互等。计算机系统的资源可分为设备资源和信息资源两大类。设备资源指的是...满意答案
b131452000
推荐于 2019.05.20
采纳率:45% 等级:6
已帮助:304人
操作系统的主要作用
操作系统的主要功能是资源管理,程序控制和人机交互等。计算机系统的资源可分为设备资源和信息资源两大类。设备资源指的是组成计算机的硬件设备,如中央处理器,主存储器,磁盘存储器,打印机,磁带存储器,显示器,键盘输入设备和鼠标等。信息资源指的是存放于计算机内的各种数据,如文件,程序库,知识库,系统软件和应用软件等。
操作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过操作系统的用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。以现代观点而言,一个标准个人电脑的OS应该提供以下的功能:进程管理(Processingmanagement)内存管理(Memorymanagement)文件系统(Filesystem)网络通讯(Networking)安全机制(Security)用户界面驱动程序(Devicedrivers)
资源管理:系统的设备资源和信息资源都是操作系统根据用户需求按一定的策略来进行分配和调度的。操作系统的存储管理就负责把内存单元分配给需要内存的程序以便让它执行,在程序执行结束后将它占用的内存单元收回以便再使用。对于提供虚拟存储的计算机系统,操作系统还要与硬件配合做好页面调度工作,根据执行程序的要求分配页面,在执行中将页面调入和调出内存以及回收页面等。
程序控制:一个用户程序的执行自始至终是在操作系统控制下进行的。一个用户将他要解决的问题用某一种程序设计语言编写了一个程序后就将该程序连同对它执行的要求输入到计算机内,操作系统就根据要求控制这个用户程序的执行直到结束。操作系统控制用户的执行主要有以下一些内容:调入相应的编译程序,将用某种程序设计语言编写的源程序编译成计算机可执行的目标程序,分配内存储等资源将程序调入内存并启动,按用户指定的要求处理执行中出现的各种事件以及与操作员联系请示有关意外事件的处理等。
人机交互:操作系统的人机交互功能是决定计算机系统“友善性”的一个重要因素。人机交互功能主要靠可输入输出的外部设备和相应的软件来完成。可供人机交互使用的设备主要有键盘显示、鼠标、各种模式识别设备等。与这些设备相应的软件就是操作系统提供人机交互功能的部分。人机交互部分的主要作用是控制有关设备的运行和理解并执行通过人机交互设备传来的有关的各种命令和要求。
虚拟内存:虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。
用户接口:用户接口包括作业一级接口和程序一级接口。作业一级接口为了便于用户直接或间接地控制自己的作业而设置。它通常包括联机用户接口与脱机用户接口。程序一级接口是为用户程序在执行中访问系统资源而设置的,通常由一组系统调用组成
00分享举报
-
内存类型有哪些
2021-07-25 01:04:00内存大家都了解,那么,内存又分哪几种类型呢?大家都不是很清楚吧,没关系,学习啦小编在这里给大家讲述内存有什么类型。服务器内存服务器是企业信息系统的核心,因此对内存的可靠性非常敏感。服务器上运行着企业的...内存大家都了解,那么,内存又分哪几种类型呢?大家都不是很清楚吧,没关系,学习啦小编在这里给大家讲述内存有什么类型。
服务器内存
服务器是企业信息系统的核心,因此对内存的可靠性非常敏感。服务器上运行着企业的关键业务,内存错误可能造成服务器错误并使数据永久丢失。因此服务器内存在可靠性方面的要求很高,所以服务器内存大多都带有Buffer(缓存器),Register(寄存器),ECC(错误纠正代码),以保证把错误发生可能性降到最低。服务器内存具有普通PC内存所不具备的高性能、高兼容性和高可靠性。
笔记本内存
笔记本诞生于台式机的486年代,在那个时代的笔记本电脑,所采用的内存各不相同,各种品牌的机型使用的内存千奇百怪,甚至同一机型的不同批次也有不同的内存,规格极其复杂,有的机器甚至使用PCMICA闪存卡来做内存。进入到台式机的586时代,笔记本厂商开始推广72针的SO DIMM标准笔记本内存,而市场上还同时存在着多种规格的笔记本内存,诸如:72针5伏的FPM;72针5伏的EDO;72针3.3伏的FPM;72针3.3伏的EDO。此几种类型的笔记本内存都已成为“古董”级的宝贝,早已在市场内消失了。在进入到“奔腾”时代,144针的3.3伏的EDO标准笔记本内存。在往后随着台式机内存中SDRAM的普及,笔记本内存也出现了144针的SDRAM。现在DDR的笔记本内存也在市面中较为普遍了,而在一些轻薄笔记本内,还有些机型使用与普通机型不同的Micro DIMM接口内存。
对于多数的笔记本电脑都并没有配备单独的显存,而是采用内存共享的形式,内存要同时负担内存和显存的存储作用,因此内存对于笔记本电脑性能的影响很大。
台式机内存
笔记本内存就是应用于笔记本电脑的内存产品,笔记本内存只是使用的环境与台式机内存不同,在工作原理方面并没有什么区别。只是因为笔记本电脑对内存的稳定性、体积、散热性方面的需求,笔记本内存在这几方面要优于台式机内存,价格方面也要高于台式机内存。
根据内存条所应用的主机不同,内存产品也各自不同的特点。台式机内存是DIY市场内最为普遍的内存,价格也相对便宜。笔记本内存则对尺寸、稳定性、散热性方面有一定的要求,价格要高于台式机内存。而应用于服务器的内存则对稳定性以及内存纠错功能要求严格,同样稳定性也是着重强调的
-
内存和外存的主要区别之处竟是在这里!
2021-07-22 05:41:09原标题:内存和外存的主要区别之处竟是在这里!内存:也称为内存储器、主存储器,简称为内存。它是计算机的重要的组成部分,也是我们前面说的计算机的大脑的主要部分。内存由高速半导体存储器芯片组成,是计算机运行...原标题:内存和外存的主要区别之处竟是在这里!
内存:也称为内存储器、主存储器,简称为内存。它是计算机的重要的组成部分,也是我们前面说的计算机的大脑的主要部分。内存由高速半导体存储器芯片组成,是计算机运行过程中存放需要运行的程序和数据的地方。计算机工作时,把要处理的数据先从外存调入内存,再从内存调入CPU;CPU处理完毕以后,又将数据送回到内存,最后再保存到外存中去。
当我们要求计算机完成一项较大的工作,比如设计一个数据库管理系统时,需要运行的程序和数据可能很多。在程序的编译、调试、运行过程中,需要使用大量的软件资源。但是,CPU在某一段时间内运行的程序和数据只是所需软件资源的一部分,其余大部分都暂时不用。因此,CPU只将当前要运行的程序和数据调入内存,而把其他暂时不用的程序与数据存到磁盘等外存储器中去。
换一种方式来说,假如你是个爱好运动的人,一定会有一个旅行包。登山前你会往里放登山鞋、绳索、钉爪等用品。要是你想出门打网球了呢?那么你得把原来包里的东西倒出来,换成网球、球拍等用品。内存就像你的这个旅行包,不大,但装的都是你马上要用的东西。当你需要打印的时候,内存里就装启动打印机的程序和数据,当你要听音乐或看电影的时候,它就得换上相关的程序和数据了。
外存:外存储器(简称为外存)不包括在传统的主机中,它是通过一条通信线与主机板相连的,所以叫外存。外存储器包括硬盘(需要打开机箱才能看到)、软盘、光盘等。也包括目前广泛使用的U盘和其他可移动存储器。
外存储器的作用是存放需要连机保存但暂时不使用的程序和数据。比如操作系统、语言编译程序、编辑程序、各种软件应用程序和运行调试环境等。好像你家里的储物柜,春、夏、秋、冬所用的衣、帽、鞋、袜都在里面,但你是不会在夏天去找冬天的衣服穿的。外存储器的存储容量大,但找起东西来比内存慢得多。返回搜狐,查看更多
责任编辑:
-
操作系统的主要功能
2019-08-02 15:10:55操作系统的主要任务,是为多道程序的运行提供良好的运行环境,以保证多道程序能 有条不紊地、高效地运行,并能最大程度地提高系统中各种资源的利用率和方便用户的使 用。为实现上述任务,操作系统应具有这样几方面... -
jprofiler主要功能简介及内存泄漏分析示例
2016-09-06 19:47:18二、主要功能简介 1.内存剖析 Memory profiler JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。所有的视图都有几个聚集层并且能够显示现有存在的对象和作为... -
内存的可靠性、可用性和诊断功能(内存RAS)
2019-09-17 14:08:20内存的可靠性、可用性和诊断功能(内存RAS) RAS - Reliability, Availability and Serviceability Reliability:可靠性。指的是系统必须尽可能的可靠,不会意外的崩溃,重启甚至导致系统物理损坏,这意味着一个... -
Java虚拟机:JVM 主要组成部分与内存区域
2018-05-12 15:45:50一、Java运行时内存中的数据区域: 每一个Java程序启动后,会获得一个JVM的实例,用来管理内存。Java 虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有个字的用途,以及... -
全面理解Java内存模型(JMM)及volatile关键字
2017-06-12 11:25:05本篇主要结合博主个人对Java内存模型的理解以及相关书籍内容的分析作为前提,对JMM进行较为全面的分析,本篇的写作思路是先阐明Java内存区域划分、硬件内存架构、Java多线程的实现原理与Java内存模型的具体关系,在... -
内存数据库究竟是如何发挥内存优势的?
2022-05-09 12:55:57内存数据库? -
内存管理的概念及作用
2018-05-25 13:34:26内存管理的功能:1.内存空间的分配与回收:由操作系统完成主存储器空间的分配和管理,使程序员摆脱存储分配的麻烦,提高编程效率2.地址转换:在多道程序环境下,程序中的逻辑地址与内存中的物理地址不可能一致,因此... -
主流内存数据库功能特性和性能比较
2019-04-20 11:55:35在实际应用中内存数据库主要是配合oracle或mysql等大型关系数据库使用,关注性能,作用类似于缓存,并不注重数据完整性和数据一致性。基于键值型的内存数据库比关系型更加易于使用,性能和可扩展性更好,因此在应用... -
操作系统之操作系统的作用、目标、发展过程、特性和主要功能
2018-06-15 17:36:00其主要功能为管理计算机设备,提高他们的利用率和系统吞吐量,并为用户和应用程序提供简单的接口,便于用户使用。OS是现代计算机系统中最重要的和最基本的系统软件。 操作系统的目标和作用 操作系统的目标 在... -
计算机操作系统的主要功能
2018-02-20 16:08:39操作系统的主要任务,是为多道程序的运行提供良好的运行环境。操作系统应具有这样几方面的功能:处理机管理,存储器管理,设备管理和文件管理。此外还需提供面向用户的接口以及...处理机管理的主要功能是创建和撤消... -
JVM之内存结构详解
2019-10-18 12:49:05对于开发人员来说,如果不了解Java的JVM,那真的是很难写得一手好代码,很难查得一手好bug。同时,JVM也是面试环节的中重灾区。...下面,开启我们的第一篇文章《JVM之内存结构详解》。 学习也是要讲究方式方法... -
Linux操作系统的主要组成部分及其功能
2020-08-23 12:54:52内核是操作系统的核心,具有很多最基本功能,如虚拟内存、多任务、共享库、需求加载、可执行程序和TCP/IP网络功能。Linux内核的模块分为以下几个部分:存储管理、CPU和进程管理、文件系统、设备管理和驱动、网络通信... -
操作系统采用哪些方法提高内存利用率
2020-11-26 21:36:11计算机的系统资源分为处理机、存储器、I/O设备以及文件(数据和程序),相应地,操作系统的主要功能也是对这四类资源的有效管理。 而存储器作为计算机系统的重要组成部分,虽然容量一直在随着计算机技术的发展而不断... -
Linux系统查看内存使用情况
2021-10-13 16:16:38常用命令 查看内存使用情况:free 显示进程信息(包括CPU、内存使用等信息):top、ps 查看驱动占用内存:lsmod -
深入理解Java虚拟机-Java内存区域与内存溢出异常
2020-01-03 21:42:24Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的"高墙",墙外面的人想进去,墙里面的人却想出来。 文章目录概述运行时数据区域程序计数器(线程私有)Java虚拟机栈(线程私有)局部变量表操作数栈动态链接... -
内存测试_内存检测工具大全
2020-01-25 22:12:05测试内存,往往不局限于一种软件,因为每种工具都有自己的局限性。灵活运用多种工具,是为了实现最大的测试效果,提升产品质量 1、《HCI MemTest》 https://hcidesign.com/memtest/ HCI MemTest恐怕是世界上... -
内存隔离_Windows 10中的“核心隔离”和“内存完整性”是什么?
2020-09-14 13:47:20内存隔离Windows 10’s April 2018 Update brings “Core Isolation” and “Memory Integrity” security features to everyone. These use virtualization-based security to protect your core operating system ... -
【Linux】Linux的内核空间(低端内存、高端内存)
2018-07-20 16:50:01这个函数的功能相当于用户空间的malloc(),所提供的内存空间在虚拟地址上连续(注意,不保证物理地址连续)。 可持久内核映射区 如果是通过 alloc_page() 获得了高端内存对应的 page,如何给它找个线性空间? ... -
查看本机内存条型号_查看电脑内存条型号
2021-07-31 04:18:09点击左侧的内存信息,这时你会看到你的内存条的型号等信息...2016-12-09 12:45:22有很多方法1,内存条上面有标签上面就有型号和容量。2,使用CPU-Z——SPD就可以查看内存条更详细的信息。3,使用鲁大师也可以查看... -
网络安全应急响应----11、内存分析
2022-03-16 07:27:23文章目录一、基于软件的内存获取技术和工具1.1、利用对象或设备直接读取物理内存的软件1.2、利用驱动或内核扩展读取物理内存的软件二、基于硬件的内存...目前的内存镜像获取方法主要分为基于硬件设备的和基于软件的。两 -
JVM内存分配与管理详解
2018-01-23 16:17:58了解C++的程序员都知道,在内存管理领域,都是由程序员维护与管理,程序员用于最高的管理权限,但对于java程序员来说,在内存管理领域,程序员不必去关心内存的分配以及回收,在jvm自动内存管理机制的帮助下,不需要... -
内存溢出分析之工具篇
2018-09-28 16:26:57主要介绍 性能压测工具 jmeter;JDK 自带工具JConsole、JVisualVM;google 推出的 malloc 分析工具 gperftools;eclipse 的 dump 文件分析工具 MAT;sun 推出的 Java 动态追踪工具 btrace;linux 查看进程内存软件 ... -
电脑卡是cpu还是内存
2021-07-26 06:39:02大家好,我是时间财富网智能客服时间君,上述问题...其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU是计算机中负责读取指令,对指令译码并执行指令的核心部件。中央处理器主要包括两个部分,即控制器、... -
堆内存和栈内存的区别
2019-03-14 00:03:46总结: 1 栈:为编译器自动分配和释放,如函数参数、局部变量、临时变量等等 2 堆:为成员分配和释放,由程序员...它主要存放静态数据、全局数据和常量。 转自: 栈内存和堆内存的区别(一个笔试题的一部分)http://...