Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: base/allocator/README.md

Issue 1875173002: Reland of Enable allocator shim for Android (https://codereview.chromium.org/1875043003/) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix for LLVM libc++ Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | base/allocator/allocator_shim_internals.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 This document describes how malloc / new calls are routed in the various Chrome 1 This document describes how malloc / new calls are routed in the various Chrome
2 platforms. 2 platforms.
3 3
4 Bare in mind that the chromium codebase does not always just use `malloc()`. 4 Bare in mind that the chromium codebase does not always just use `malloc()`.
5 Some examples: 5 Some examples:
6 - Large parts of the renderer (Blink) use two home-brewed allocators, 6 - Large parts of the renderer (Blink) use two home-brewed allocators,
7 PartitionAlloc and BlinkGC (Oilpan). 7 PartitionAlloc and BlinkGC (Oilpan).
8 - Some subsystems, such as the V8 JavaScript engine, handle memory management 8 - Some subsystems, such as the V8 JavaScript engine, handle memory management
9 autonomously. 9 autonomously.
10 - Various parts of the codebase use abstractions such as `SharedMemory` or 10 - Various parts of the codebase use abstractions such as `SharedMemory` or
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 On most platform, Chrome overrides the malloc / operator new symbols (and 90 On most platform, Chrome overrides the malloc / operator new symbols (and
91 corresponding free / delete and other variants). This is to enforce security 91 corresponding free / delete and other variants). This is to enforce security
92 checks and lately to enable the 92 checks and lately to enable the
93 [memory-infra heap profiler][url-memory-infra-heap-profiler]. 93 [memory-infra heap profiler][url-memory-infra-heap-profiler].
94 Historically each platform had its special logic for defining the allocator 94 Historically each platform had its special logic for defining the allocator
95 symbols in different places of the codebase. The unified allocator shim is 95 symbols in different places of the codebase. The unified allocator shim is
96 a project aimed to unify the symbol definition and allocator routing logic in 96 a project aimed to unify the symbol definition and allocator routing logic in
97 a central place. 97 a central place.
98 98
99 - Full documentation: [Allocator shim design doc][url-allocator-shim]. 99 - Full documentation: [Allocator shim design doc][url-allocator-shim].
100 - Current state: Available and enabled by default on Linux and CrOS. 100 - Current state: Available and enabled by default on Linux, CrOS and Android.
101 - Tracking bug: [https://crbug.com/550886][crbug.com/550886]. 101 - Tracking bug: [https://crbug.com/550886][crbug.com/550886].
102 - Build-time flag: `use_experimental_allocator_shim`. 102 - Build-time flag: `use_experimental_allocator_shim`.
103 103
104 **Overview of the unified allocator shim** 104 **Overview of the unified allocator shim**
105 The allocator shim consists of three stages: 105 The allocator shim consists of three stages:
106 ``` 106 ```
107 +-------------------------+ +-----------------------+ +----------------+ 107 +-------------------------+ +-----------------------+ +----------------+
108 | malloc & friends | -> | shim layer | -> | Routing to | 108 | malloc & friends | -> | shim layer | -> | Routing to |
109 | symbols definition | | implementation | | allocator | 109 | symbols definition | | implementation | | allocator |
110 +-------------------------+ +-----------------------+ +----------------+ 110 +-------------------------+ +-----------------------+ +----------------+
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 Related links 187 Related links
188 ------------- 188 -------------
189 - [Unified allocator shim doc - Feb 2016][url-allocator-shim] 189 - [Unified allocator shim doc - Feb 2016][url-allocator-shim]
190 - [Allocator cleanup doc - Jan 2016][url-allocator-cleanup] 190 - [Allocator cleanup doc - Jan 2016][url-allocator-cleanup]
191 - [Proposal to use PartitionAlloc as default allocator](https://crbug.com/339604 ) 191 - [Proposal to use PartitionAlloc as default allocator](https://crbug.com/339604 )
192 - [Memory-Infra: Tools to profile memory usage in Chrome](components/tracing/doc s/memory_infra.md) 192 - [Memory-Infra: Tools to profile memory usage in Chrome](components/tracing/doc s/memory_infra.md)
193 193
194 [url-allocator-cleanup]: https://docs.google.com/document/d/1V77Kgp_4tfaaWPEZVxN evoD02wXiatnAv7Ssgr0hmjg/edit?usp=sharing 194 [url-allocator-cleanup]: https://docs.google.com/document/d/1V77Kgp_4tfaaWPEZVxN evoD02wXiatnAv7Ssgr0hmjg/edit?usp=sharing
195 [url-memory-infra-heap-profiler]: components/tracing/docs/heap_profiler.md 195 [url-memory-infra-heap-profiler]: components/tracing/docs/heap_profiler.md
196 [url-allocator-shim]: https://docs.google.com/document/d/1yKlO1AO4XjpDad9rjcBOI1 5EKdAGsuGO_IeZy0g0kxo/edit?usp=sharing 196 [url-allocator-shim]: https://docs.google.com/document/d/1yKlO1AO4XjpDad9rjcBOI1 5EKdAGsuGO_IeZy0g0kxo/edit?usp=sharing
OLDNEW
« no previous file with comments | « no previous file | base/allocator/allocator_shim_internals.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698