Linux堆內存管理深入分析(上半部) 作者:走位@阿里聚安全 0 前言 近年來,漏洞挖掘越來越火,各種漏洞挖掘、利用的分析文章層出不窮。從大方向來看,主要有基於棧溢出的漏洞利用和基於堆溢出的漏洞利用兩種。國內關於棧溢出的資料相對較多,這里就不累述了,但是關於堆溢出的漏洞利用資料就很 ...
Linux堆內存管理深入分析 下半部 作者 走位,阿里聚安全 前言回顧 在上一篇文章中 鏈接見文章底部 ,詳細介紹了堆內存管理中涉及到的基本概念以及相互關系,同時也着重介紹了堆中chunk分配和釋放策略中使用到的隱式鏈表技術。通過前面的介紹,我們知道使用隱式鏈表來管理內存chunk總會涉及到內存的遍歷,效率極低。對此glibc malloc引入了顯示鏈表技術來提高堆內存分配和釋放的效率。 所謂的顯 ...
2016-05-23 17:42 1 5308 推薦指數:
Linux堆內存管理深入分析(上半部) 作者:走位@阿里聚安全 0 前言 近年來,漏洞挖掘越來越火,各種漏洞挖掘、利用的分析文章層出不窮。從大方向來看,主要有基於棧溢出的漏洞利用和基於堆溢出的漏洞利用兩種。國內關於棧溢出的資料相對較多,這里就不累述了,但是關於堆溢出的漏洞利用資料就很 ...
這里我們主要介紹進程的狀態,進程的狀態可以通過/proc/PID/status來查看,也可以通過/proc/PID/stat來查看。 如果說到工具大家用的最多的ps也可以看到進程的信息。這里我們通過/proc/PID/status來分析進程的信息。 在2.6.18之后的內核,多了 ...
概述 一個對象本身的內在結構需要一種描述方式,這個描述信息是以字節碼的方法存儲在方法區中的。Class 本身就是一個對象,都以 KB 為單位,如果 new Integer() 為了表示一個數據就占用KB級別的內存就有點不值了,下面講解 JVM 是如何做的。為了表示對象的屬性、方法等信息,不得不 ...
上大家都已經知道了,是基於libevent,支持異步的事件處理。 最主要的是要知道它的內存管理機制,使用如 ...
,我們將圍繞三個方面來分析 ThreadLocal 內存泄漏的問題 ThreadLocal 實 ...
寫在前面 ThreadLocal 基本用法本文就不介紹了,如果有不知道的小伙伴可以先了解一下,本文只研究 ThreadLocal 內存泄漏這一問題。 ThreadLocal 會發生內存泄漏嗎? 先給出結論:如果你使用不當是有可能發生內存泄露的 ThreadLocal 和 當前 ...
一,介紹 以前在學習堆時,寫了兩篇文章:數據結構--堆的實現(上) 和 數據結構--堆的實現(下), 感覺對堆的認識還是不夠。本文主要分析數據結構 堆(討論小頂堆)的基本操作的一些細節,比如 insert(插入)操作 和 deleteMin(刪除堆頂元素)操作的實現細節、分析建堆 ...
一)概述 在本篇文章里,我們會涉及兩部份內容,一個是LVS,另一個則是keepalived. 即我們用LVS和keepalived實現了負載均衡及高可用的服務器. ...