计算机基础
老王不让用
芝兰生于幽谷,不以无人而不芳; 君子修身立德,不为穷困而改节
展开
-
linux环境内存分配原理 mallocinfo
目录1、Linux 虚拟地址空间如何分布?2、malloc和free是如何分配和释放内存?3、如何查看堆内内存的碎片情况 ?4、既然堆内内存brk和sbrk不能直接释放,为什么不全部使用 mmap 来分配,munmap直接释放呢?5、如何查看进程的缺页中断信息?6、除了 glibc 的 malloc/free ,还有其他第三方实现吗?Linux的虚拟内存管理有几个关键概念:Linux 虚拟地址空间如何分布?malloc和free是如何分配和释放内存?如何查看堆内内存的碎片情况转载 2020-07-24 22:41:23 · 1931 阅读 · 0 评论 -
容量失效(capacity miss)与冲突失效(conflict miss)的区别
Cache访问失效分为强制性失效/冷失效(compulsory miss/cold miss)、容量失效(capacity miss)和冲突失效(conflict miss)。其中容量失效和冲突失效概念非常相近,理解起来不容易区别。概念强制性失效:CPU第一次访问相应cache块,cache中肯定没有该cache块,引起的失效叫做强制性失效。这是不可避免的。 容量失效:有限的cache容量导致cache放不下而替换出cache块,被替换出去的cache块再被访问,引起的失效叫做容量失效。 冲突失转载 2020-07-02 14:52:31 · 5573 阅读 · 1 评论 -
进程和线程的区别
操作系统面试题1、进程和线程的区别?解析:(1)进程是资源的分配和调度的一个独立单元,而线程是CPU调度的基本单元(2)同一个进程中可以包括多个线程,并且线程共享整个进程的资源(寄存器、堆栈、上下文),一个进行至少包括一个线程。(3)进程的创建调用fork或者vfork,而线程的创建调用pthread_create,进程结束后它拥有的所有线程都将销...转载 2020-01-11 14:53:54 · 259 阅读 · 0 评论 -
Linux下查看CPU高速缓存(cache)信息
目录1、查看CPU Cache级数,每级大小2、查看cpuX中Cache的关联方式3、查看cache line的大小4、lscpu指令查看各级缓存和基本信息1、查看CPU Cache级数,每级大小[root@localhost ~]# ls /sys/devices/system/cpu/cpu0/cache/index0 index1 index2 index...转载 2020-01-03 15:49:45 · 11494 阅读 · 1 评论 -
计算机缓存Cache以及Cache Line详解
目录1、计算机存储体系简介2、计算机缓存 Cache2.1、Cache 概述2.2、Cache 结构3、计算机缓存行 ChaceLine 1、计算机存储体系简介 存储器是分层次的,离CPU越近的存储器,速度越快,每字节的成本越高,同时容量也因此越小。寄存器速度最快,离CPU最近,成本最高,所以个数容量有限,其次是高速缓存(缓存也是分级,有L1,L2等缓...转载 2020-01-03 14:56:58 · 1525 阅读 · 0 评论