Linux系统为啥特别占内存
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统为啥特别占内存相关的知识,希望对你有一定的参考价值。
参考技术A Linux用这么多内存是为了提高系统性能和不浪费内存,Linux把多的内存做了cache,以提高io速度。Linux操作系统是UNIX操作系统的一种克隆系统,它诞生于1991 年的10 月5 日(这是第一次正式向外公布的`时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX 类操作系统,并且使用人数还在迅猛增长。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。
另外,Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。
Linux以它的高效性和灵活性著称,Linux模块化的设计结构,使得它既能在价格昂贵的工作站上运行,也能够在廉价的PC机上实现全部的Unix特性,具有多任务、多用户的能力。Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。
除此之外,Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同使用Windows NT一样,允许用户使用窗口、图标和菜单对系统进行操作。
为啥老有人说安装包越大越占内存呢?
为什么老有人说安装包越大越占内存呢?安装包跟内存有关系吗?请明人指点~每安装一个应用系统会在/data/app/拷贝一份到内置的ROM会被占用, 难倒他们说的是ROM ?为什么系统要拷贝一份留着手机里呢?
/data/app/,相当于windows的应用源文件,/data/data/下相当于windows下数据缓存,/data/system/packages.xml相当于windows下注册表。安装应用时,系统仅仅会把应用的dex文件拷贝一份到data/dalvik-cache下,然后把安装信息写到packages.xml中,如果有so库的话会把lib库拷贝一份到/data/data下,但是找资源还是在/data/app/。为什么不设计应用把资源也拷贝出来,然后删除/data/app里面应用呢?我觉得有以下几个方面,首先应用所在的/data/data目录是可以清除数据的,在settings里面可以操作;其次 应用资源解压势必会造成更大的空间占用,还不如就在apk中,通过解析来读取,而且速度更快;再次 多用户情况下的问题。再次 因为系统是通过id值找资源,zip包更方便,如果解压出来 有很多问题。当然可能还有很多其他原因。另外我不清楚你说的“在手机里还另留一份呢?”是什么意思?说明下,data/apk里面是对应用名进行了修改的,主要是为了packages.xml中映射不会出现重名。安装过程中会有临时文件在/data/local/tmp中生成,但是最后是会删除的。 参考技术A 应用包大小和是否吃内存没有绝对的联系,所谓的吃内存应该是指rom吧。很多人不管ram和rom,统一都说内存,有时是会让人误解的。包再大,我代码只写一个helloword,难道还会吃多大ram?系统加载resources根本就不会有多大,这也是很多人的误区,很多人以为资源大,系统启动应用时会做资源缓存,肯定耗ram,其实这个是不对的。默认的,应用启动时不见得会有多少自身资源缓存了,除非应用代码里面搞的。 参考技术B 安装包大小,跟程序运行起来占用内存没关系。有关系的是你new多少对象。安装包100兆,你就new 了一个对象。运行起来占用内存很小的哦。 参考技术C 可能说的是内部存储,不是内存以上是关于Linux系统为啥特别占内存的主要内容,如果未能解决你的问题,请参考以下文章