PHP内存管理ZMM(二)-常见宏的值
3272 字 - 7 分钟相关宏的定义
64位系统非debug模式编译后的
|
|
下面依次解释各个宏的含义和作用
- ZEND_MM_ALIGNMENT
内存对齐的时候用到,值为8,无特别的逻辑含义
ZEND_MM_ALIGNMENT_LOG2
辅助内存对齐的时候用到,值为3,无特别的逻辑含义
ZEND_MM_MIN_SIZE
值为两个指针的长度,值为16
ZEND_MM_MAX_SMALL_SIZE
小内存块的大小上限,值为544,用于判断但前大小的内存该放入哪种区域(大小内存块)
ZEND_MM_ALIGNED_HEADER_SIZE
结构体
zend_mm_block
占用内存大小,值为16,无特别的逻辑含义ZEND_MM_ALIGNED_FREE_HEADER_SIZE
结构体
zend_mm_small_free_block
占用内存大小,值为32,无特别的逻辑含义ZEND_MM_MIN_ALLOC_BLOCK_SIZE
此宏值和ZEND_MM_ALIGNED_HEADER_SIZE一致,值为16,无特别逻辑含义
ZEND_MM_ALIGNED_MIN_HEADER_SIZE
取ZEND_MM_MIN_ALLOC_BLOCK_SIZE、ZEND_MM_ALIGNED_FREE_HEADER_SIZE中较大的值,值为32,后续计算true_size是会用到。
ZEND_MM_TRUE_SIZE
如果传入size小于等于16,则返回32。否则返回内存对齐后的size+16
Zend中打印宏的值
代码逻辑见如下:
https://github.com/php/php-src/blob/PHP-5.6.34/Zend/zend_alloc.c#L1050
|
|
在64位系统执行后:
ZEND_MM_ALIGNMENT=8
ZEND_MM_ALIGNMENT_LOG2=3
ZEND_MM_MIN_SIZE=16
ZEND_MM_MAX_SMALL_SIZE=544
ZEND_MM_ALIGNED_HEADER_SIZE=16
ZEND_MM_ALIGNED_FREE_HEADER_SIZE=32
ZEND_MM_MIN_ALLOC_BLOCK_SIZE=16
ZEND_MM_ALIGNED_MIN_HEADER_SIZE=32
ZEND_MM_ALIGNED_SEGMENT_SIZE=16
0 : 32 1 0
1 : 32 1 0
2 : 32 1 0
3 : 32 1 0
4 : 32 1 0
5 : 32 1 0
6 : 32 1 0
7 : 32 1 0
8 : 32 1 0
9 : 32 1 0
10 : 32 1 0
11 : 32 1 0
12 : 32 1 0
13 : 32 1 0
14 : 32 1 0
15 : 32 1 0
16*: 32 1 0
17 : 40 1 1
18 : 40 1 1
19 : 40 1 1
20 : 40 1 1
21 : 40 1 1
22 : 40 1 1
23 : 40 1 1
24 : 40 1 1
25 : 48 1 2
26 : 48 1 2
27 : 48 1 2
28 : 48 1 2
29 : 48 1 2
30 : 48 1 2
31 : 48 1 2
32 : 48 1 2
33 : 56 1 3
34 : 56 1 3
35 : 56 1 3
36 : 56 1 3
37 : 56 1 3
38 : 56 1 3
39 : 56 1 3
40 : 56 1 3
41 : 64 1 4
42 : 64 1 4
43 : 64 1 4
44 : 64 1 4
45 : 64 1 4
46 : 64 1 4
47 : 64 1 4
48 : 64 1 4
49 : 72 1 5
50 : 72 1 5
51 : 72 1 5
52 : 72 1 5
53 : 72 1 5
54 : 72 1 5
55 : 72 1 5
56 : 72 1 5
57 : 80 1 6
58 : 80 1 6
59 : 80 1 6
60 : 80 1 6
61 : 80 1 6
62 : 80 1 6
63 : 80 1 6
64 : 80 1 6
65 : 88 1 7
66 : 88 1 7
67 : 88 1 7
68 : 88 1 7
69 : 88 1 7
70 : 88 1 7
71 : 88 1 7
72 : 88 1 7
73 : 96 1 8
74 : 96 1 8
75 : 96 1 8
76 : 96 1 8
77 : 96 1 8
78 : 96 1 8
79 : 96 1 8
80 : 96 1 8
81 : 104 1 9
82 : 104 1 9
83 : 104 1 9
84 : 104 1 9
85 : 104 1 9
86 : 104 1 9
87 : 104 1 9
88 : 104 1 9
89 : 112 1 10
90 : 112 1 10
91 : 112 1 10
92 : 112 1 10
93 : 112 1 10
94 : 112 1 10
95 : 112 1 10
96 : 112 1 10
97 : 120 1 11
98 : 120 1 11
99 : 120 1 11
100 : 120 1 11
101 : 120 1 11
102 : 120 1 11
103 : 120 1 11
104 : 120 1 11
105 : 128 1 12
106 : 128 1 12
107 : 128 1 12
108 : 128 1 12
109 : 128 1 12
110 : 128 1 12
111 : 128 1 12
112 : 128 1 12
113 : 136 1 13
114 : 136 1 13
115 : 136 1 13
116 : 136 1 13
117 : 136 1 13
118 : 136 1 13
119 : 136 1 13
120 : 136 1 13
121 : 144 1 14
122 : 144 1 14
123 : 144 1 14
124 : 144 1 14
125 : 144 1 14
126 : 144 1 14
127 : 144 1 14
128 : 144 1 14
129 : 152 1 15
130 : 152 1 15
131 : 152 1 15
132 : 152 1 15
133 : 152 1 15
134 : 152 1 15
135 : 152 1 15
136 : 152 1 15
137 : 160 1 16
138 : 160 1 16
139 : 160 1 16
140 : 160 1 16
141 : 160 1 16
142 : 160 1 16
143 : 160 1 16
144 : 160 1 16
145 : 168 1 17
146 : 168 1 17
147 : 168 1 17
148 : 168 1 17
149 : 168 1 17
150 : 168 1 17
151 : 168 1 17
152 : 168 1 17
153 : 176 1 18
154 : 176 1 18
155 : 176 1 18
156 : 176 1 18
157 : 176 1 18
158 : 176 1 18
159 : 176 1 18
160 : 176 1 18
161 : 184 1 19
162 : 184 1 19
163 : 184 1 19
164 : 184 1 19
165 : 184 1 19
166 : 184 1 19
167 : 184 1 19
168 : 184 1 19
169 : 192 1 20
170 : 192 1 20
171 : 192 1 20
172 : 192 1 20
173 : 192 1 20
174 : 192 1 20
175 : 192 1 20
176 : 192 1 20
177 : 200 1 21
178 : 200 1 21
179 : 200 1 21
180 : 200 1 21
181 : 200 1 21
182 : 200 1 21
183 : 200 1 21
184 : 200 1 21
185 : 208 1 22
186 : 208 1 22
187 : 208 1 22
188 : 208 1 22
189 : 208 1 22
190 : 208 1 22
191 : 208 1 22
192 : 208 1 22
193 : 216 1 23
194 : 216 1 23
195 : 216 1 23
196 : 216 1 23
197 : 216 1 23
198 : 216 1 23
199 : 216 1 23
200 : 216 1 23
201 : 224 1 24
202 : 224 1 24
203 : 224 1 24
204 : 224 1 24
205 : 224 1 24
206 : 224 1 24
207 : 224 1 24
208 : 224 1 24
209 : 232 1 25
210 : 232 1 25
211 : 232 1 25
212 : 232 1 25
213 : 232 1 25
214 : 232 1 25
215 : 232 1 25
216 : 232 1 25
217 : 240 1 26
218 : 240 1 26
219 : 240 1 26
220 : 240 1 26
221 : 240 1 26
222 : 240 1 26
223 : 240 1 26
224 : 240 1 26
225 : 248 1 27
226 : 248 1 27
227 : 248 1 27
228 : 248 1 27
229 : 248 1 27
230 : 248 1 27
231 : 248 1 27
232 : 248 1 27
233 : 256 1 28
234 : 256 1 28
235 : 256 1 28
236 : 256 1 28
237 : 256 1 28
238 : 256 1 28
239 : 256 1 28
240 : 256 1 28
241 : 264 1 29
242 : 264 1 29
243 : 264 1 29
244 : 264 1 29
245 : 264 1 29
246 : 264 1 29
247 : 264 1 29
248 : 264 1 29
249 : 272 1 30
250 : 272 1 30
251 : 272 1 30
252 : 272 1 30
253 : 272 1 30
254 : 272 1 30
255 : 272 1 30
256 : 272 1 30
257 : 280 1 31
258 : 280 1 31
259 : 280 1 31
260 : 280 1 31
261 : 280 1 31
262 : 280 1 31
263 : 280 1 31
264 : 280 1 31
265 : 288 1 32
266 : 288 1 32
267 : 288 1 32
268 : 288 1 32
269 : 288 1 32
270 : 288 1 32
271 : 288 1 32
272 : 288 1 32
273 : 296 1 33
274 : 296 1 33
275 : 296 1 33
276 : 296 1 33
277 : 296 1 33
278 : 296 1 33
279 : 296 1 33
280 : 296 1 33
281 : 304 1 34
282 : 304 1 34
283 : 304 1 34
284 : 304 1 34
285 : 304 1 34
286 : 304 1 34
287 : 304 1 34
288 : 304 1 34
289 : 312 1 35
290 : 312 1 35
291 : 312 1 35
292 : 312 1 35
293 : 312 1 35
294 : 312 1 35
295 : 312 1 35
296 : 312 1 35
297 : 320 1 36
298 : 320 1 36
299 : 320 1 36
300 : 320 1 36
301 : 320 1 36
302 : 320 1 36
303 : 320 1 36
304 : 320 1 36
305 : 328 1 37
306 : 328 1 37
307 : 328 1 37
308 : 328 1 37
309 : 328 1 37
310 : 328 1 37
311 : 328 1 37
312 : 328 1 37
313 : 336 1 38
314 : 336 1 38
315 : 336 1 38
316 : 336 1 38
317 : 336 1 38
318 : 336 1 38
319 : 336 1 38
320 : 336 1 38
321 : 344 1 39
322 : 344 1 39
323 : 344 1 39
324 : 344 1 39
325 : 344 1 39
326 : 344 1 39
327 : 344 1 39
328 : 344 1 39
329 : 352 1 40
330 : 352 1 40
331 : 352 1 40
332 : 352 1 40
333 : 352 1 40
334 : 352 1 40
335 : 352 1 40
336 : 352 1 40
337 : 360 1 41
338 : 360 1 41
339 : 360 1 41
340 : 360 1 41
341 : 360 1 41
342 : 360 1 41
343 : 360 1 41
344 : 360 1 41
345 : 368 1 42
346 : 368 1 42
347 : 368 1 42
348 : 368 1 42
349 : 368 1 42
350 : 368 1 42
351 : 368 1 42
352 : 368 1 42
353 : 376 1 43
354 : 376 1 43
355 : 376 1 43
356 : 376 1 43
357 : 376 1 43
358 : 376 1 43
359 : 376 1 43
360 : 376 1 43
361 : 384 1 44
362 : 384 1 44
363 : 384 1 44
364 : 384 1 44
365 : 384 1 44
366 : 384 1 44
367 : 384 1 44
368 : 384 1 44
369 : 392 1 45
370 : 392 1 45
371 : 392 1 45
372 : 392 1 45
373 : 392 1 45
374 : 392 1 45
375 : 392 1 45
376 : 392 1 45
377 : 400 1 46
378 : 400 1 46
379 : 400 1 46
380 : 400 1 46
381 : 400 1 46
382 : 400 1 46
383 : 400 1 46
384 : 400 1 46
385 : 408 1 47
386 : 408 1 47
387 : 408 1 47
388 : 408 1 47
389 : 408 1 47
390 : 408 1 47
391 : 408 1 47
392 : 408 1 47
393 : 416 1 48
394 : 416 1 48
395 : 416 1 48
396 : 416 1 48
397 : 416 1 48
398 : 416 1 48
399 : 416 1 48
400 : 416 1 48
401 : 424 1 49
402 : 424 1 49
403 : 424 1 49
404 : 424 1 49
405 : 424 1 49
406 : 424 1 49
407 : 424 1 49
408 : 424 1 49
409 : 432 1 50
410 : 432 1 50
411 : 432 1 50
412 : 432 1 50
413 : 432 1 50
414 : 432 1 50
415 : 432 1 50
416 : 432 1 50
417 : 440 1 51
418 : 440 1 51
419 : 440 1 51
420 : 440 1 51
421 : 440 1 51
422 : 440 1 51
423 : 440 1 51
424 : 440 1 51
425 : 448 1 52
426 : 448 1 52
427 : 448 1 52
428 : 448 1 52
429 : 448 1 52
430 : 448 1 52
431 : 448 1 52
432 : 448 1 52
433 : 456 1 53
434 : 456 1 53
435 : 456 1 53
436 : 456 1 53
437 : 456 1 53
438 : 456 1 53
439 : 456 1 53
440 : 456 1 53
441 : 464 1 54
442 : 464 1 54
443 : 464 1 54
444 : 464 1 54
445 : 464 1 54
446 : 464 1 54
447 : 464 1 54
448 : 464 1 54
449 : 472 1 55
450 : 472 1 55
451 : 472 1 55
452 : 472 1 55
453 : 472 1 55
454 : 472 1 55
455 : 472 1 55
456 : 472 1 55
457 : 480 1 56
458 : 480 1 56
459 : 480 1 56
460 : 480 1 56
461 : 480 1 56
462 : 480 1 56
463 : 480 1 56
464 : 480 1 56
465 : 488 1 57
466 : 488 1 57
467 : 488 1 57
468 : 488 1 57
469 : 488 1 57
470 : 488 1 57
471 : 488 1 57
472 : 488 1 57
473 : 496 1 58
474 : 496 1 58
475 : 496 1 58
476 : 496 1 58
477 : 496 1 58
478 : 496 1 58
479 : 496 1 58
480 : 496 1 58
481 : 504 1 59
482 : 504 1 59
483 : 504 1 59
484 : 504 1 59
485 : 504 1 59
486 : 504 1 59
487 : 504 1 59
488 : 504 1 59
489 : 512 1 60
490 : 512 1 60
491 : 512 1 60
492 : 512 1 60
493 : 512 1 60
494 : 512 1 60
495 : 512 1 60
496 : 512 1 60
497 : 520 1 61
498 : 520 1 61
499 : 520 1 61
500 : 520 1 61
501 : 520 1 61
502 : 520 1 61
503 : 520 1 61
504 : 520 1 61
505 : 528 1 62
506 : 528 1 62
507 : 528 1 62
508 : 528 1 62
509 : 528 1 62
510 : 528 1 62
511 : 528 1 62
512 : 528 1 62
513 : 536 1 63
514 : 536 1 63
515 : 536 1 63
516 : 536 1 63
517 : 536 1 63
518 : 536 1 63
519 : 536 1 63
520 : 536 1 63
521 : 544 0 64
522 : 544 0 64
523 : 544 0 64
524 : 544 0 64
525 : 544 0 64
526 : 544 0 64
527 : 544 0 64
528 : 544 0 64
529 : 552 0 65
530 : 552 0 65
531 : 552 0 65
532 : 552 0 65
533 : 552 0 65
534 : 552 0 65
535 : 552 0 65
536 : 552 0 65
537 : 560 0 66
538 : 560 0 66
539 : 560 0 66
540 : 560 0 66
541 : 560 0 66
542 : 560 0 66
543 : 560 0 66
- 分类:
- php