php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
zend_shared_alloc.h File Reference
#include "zend.h"
#include "ZendAccelerator.h"

Go to the source code of this file.

Data Structures

struct  _zend_shared_segment
 
struct  zend_shared_memory_handlers
 
struct  _handler_entry
 
struct  _zend_shared_memory_state
 
struct  _zend_smm_shared_globals
 
union  _align_test
 

Macros

#define ALLOC_FAILURE   0
 
#define ALLOC_SUCCESS   1
 
#define FAILED_REATTACHED   2
 
#define SUCCESSFULLY_REATTACHED   4
 
#define ALLOC_FAIL_MAPPING   8
 
#define ALLOC_FALLBACK   9
 
#define ZSMMG(element)
 
#define SHARED_ALLOC_REATTACHED   (SUCCESS+1)
 
#define PLATFORM_ALIGNMENT   (sizeof(align_test))
 
#define ZEND_ALIGNED_SIZE(size)
 

Typedefs

typedef struct _zend_shared_segment zend_shared_segment
 
typedef int(* create_segments_t) (size_t requested_size, zend_shared_segment ***shared_segments, int *shared_segment_count, const char **error_in)
 
typedef int(* detach_segment_t) (zend_shared_segment *shared_segment)
 
typedef struct _handler_entry zend_shared_memory_handler_entry
 
typedef struct _zend_shared_memory_state zend_shared_memory_state
 
typedef struct _zend_smm_shared_globals zend_smm_shared_globals
 
typedef union _align_test align_test
 

Functions

int zend_shared_alloc_startup (size_t requested_size, size_t reserved_size)
 
void zend_shared_alloc_shutdown (void)
 
voidzend_shared_alloc (size_t size)
 
voidzend_shared_memdup_get_put_free (void *source, size_t size)
 
voidzend_shared_memdup_put_free (void *source, size_t size)
 
voidzend_shared_memdup_free (void *source, size_t size)
 
voidzend_shared_memdup_get_put (void *source, size_t size)
 
voidzend_shared_memdup_put (void *source, size_t size)
 
voidzend_shared_memdup (void *source, size_t size)
 
int zend_shared_memdup_size (void *p, size_t size)
 
bool zend_accel_in_shm (void *ptr)
 
void zend_shared_alloc_lock (void)
 
void zend_shared_alloc_unlock (void)
 
void zend_shared_alloc_safe_unlock (void)
 
void zend_shared_alloc_init_xlat_table (void)
 
void zend_shared_alloc_destroy_xlat_table (void)
 
void zend_shared_alloc_clear_xlat_table (void)
 
uint32_t zend_shared_alloc_checkpoint_xlat_table (void)
 
void zend_shared_alloc_restore_xlat_table (uint32_t checkpoint)
 
void zend_shared_alloc_register_xlat_entry (const void *key, const void *value)
 
voidzend_shared_alloc_get_xlat_entry (const void *key)
 
size_t zend_shared_alloc_get_free_memory (void)
 
void zend_shared_alloc_save_state (void)
 
void zend_shared_alloc_restore_state (void)
 
const char * zend_accel_get_shared_model (void)
 
void zend_accel_shared_protect (bool protected)
 

Variables

ZEND_EXT_API zend_smm_shared_globalssmm_shared_globals
 

Macro Definition Documentation

◆ ALLOC_FAIL_MAPPING

#define ALLOC_FAIL_MAPPING   8

Definition at line 73 of file zend_shared_alloc.h.

◆ ALLOC_FAILURE

#define ALLOC_FAILURE   0

Definition at line 69 of file zend_shared_alloc.h.

◆ ALLOC_FALLBACK

#define ALLOC_FALLBACK   9

Definition at line 74 of file zend_shared_alloc.h.

◆ ALLOC_SUCCESS

#define ALLOC_SUCCESS   1

Definition at line 70 of file zend_shared_alloc.h.

◆ FAILED_REATTACHED

#define FAILED_REATTACHED   2

Definition at line 71 of file zend_shared_alloc.h.

◆ PLATFORM_ALIGNMENT

#define PLATFORM_ALIGNMENT   (sizeof(align_test))

Definition at line 171 of file zend_shared_alloc.h.

◆ SHARED_ALLOC_REATTACHED

#define SHARED_ALLOC_REATTACHED   (SUCCESS+1)

Definition at line 126 of file zend_shared_alloc.h.

◆ SUCCESSFULLY_REATTACHED

#define SUCCESSFULLY_REATTACHED   4

Definition at line 72 of file zend_shared_alloc.h.

◆ ZEND_ALIGNED_SIZE

#define ZEND_ALIGNED_SIZE ( size)
Value:
new_type size
Definition ffi.c:4365
#define ZEND_MM_ALIGNED_SIZE_EX(size, alignment)
Definition zend_alloc.h:37
#define PLATFORM_ALIGNMENT

Definition at line 174 of file zend_shared_alloc.h.

◆ ZSMMG

#define ZSMMG ( element)
Value:
ZEND_EXT_API zend_smm_shared_globals * smm_shared_globals

Definition at line 124 of file zend_shared_alloc.h.

Typedef Documentation

◆ align_test

typedef union _align_test align_test

◆ create_segments_t

typedef int(* create_segments_t) (size_t requested_size, zend_shared_segment ***shared_segments, int *shared_segment_count, const char **error_in)

Definition at line 83 of file zend_shared_alloc.h.

◆ detach_segment_t

typedef int(* detach_segment_t) (zend_shared_segment *shared_segment)

Definition at line 84 of file zend_shared_alloc.h.

◆ zend_shared_memory_handler_entry

◆ zend_shared_memory_state

◆ zend_shared_segment

◆ zend_smm_shared_globals

Function Documentation

◆ zend_accel_get_shared_model()

const char * zend_accel_get_shared_model ( void )

Definition at line 621 of file zend_shared_alloc.c.

◆ zend_accel_in_shm()

bool zend_accel_in_shm ( void * ptr)

Definition at line 658 of file zend_shared_alloc.c.

◆ zend_accel_shared_protect()

void zend_accel_shared_protect ( bool protected)

Memory write protection

Parameters
protectedtrue to protect shared memory (read-only), false to unprotect shared memory (writable)

Definition at line 626 of file zend_shared_alloc.c.

◆ zend_shared_alloc()

void * zend_shared_alloc ( size_t size)

Definition at line 367 of file zend_shared_alloc.c.

◆ zend_shared_alloc_checkpoint_xlat_table()

uint32_t zend_shared_alloc_checkpoint_xlat_table ( void )

Definition at line 564 of file zend_shared_alloc.c.

◆ zend_shared_alloc_clear_xlat_table()

void zend_shared_alloc_clear_xlat_table ( void )

Definition at line 559 of file zend_shared_alloc.c.

◆ zend_shared_alloc_destroy_xlat_table()

void zend_shared_alloc_destroy_xlat_table ( void )

Definition at line 553 of file zend_shared_alloc.c.

◆ zend_shared_alloc_get_free_memory()

size_t zend_shared_alloc_get_free_memory ( void )

Definition at line 594 of file zend_shared_alloc.c.

◆ zend_shared_alloc_get_xlat_entry()

void * zend_shared_alloc_get_xlat_entry ( const void * key)

Definition at line 582 of file zend_shared_alloc.c.

◆ zend_shared_alloc_init_xlat_table()

void zend_shared_alloc_init_xlat_table ( void )

Definition at line 547 of file zend_shared_alloc.c.

◆ zend_shared_alloc_lock()

void zend_shared_alloc_lock ( void )

Definition at line 481 of file zend_shared_alloc.c.

◆ zend_shared_alloc_register_xlat_entry()

void zend_shared_alloc_register_xlat_entry ( const void * key,
const void * value )

Definition at line 574 of file zend_shared_alloc.c.

◆ zend_shared_alloc_restore_state()

void zend_shared_alloc_restore_state ( void )

Definition at line 609 of file zend_shared_alloc.c.

◆ zend_shared_alloc_restore_xlat_table()

void zend_shared_alloc_restore_xlat_table ( uint32_t checkpoint)

Definition at line 569 of file zend_shared_alloc.c.

◆ zend_shared_alloc_safe_unlock()

void zend_shared_alloc_safe_unlock ( void )

Definition at line 474 of file zend_shared_alloc.c.

◆ zend_shared_alloc_save_state()

void zend_shared_alloc_save_state ( void )

Definition at line 599 of file zend_shared_alloc.c.

◆ zend_shared_alloc_shutdown()

void zend_shared_alloc_shutdown ( void )

Definition at line 307 of file zend_shared_alloc.c.

◆ zend_shared_alloc_startup()

int zend_shared_alloc_startup ( size_t requested_size,
size_t reserved_size )

Definition at line 177 of file zend_shared_alloc.c.

◆ zend_shared_alloc_unlock()

void zend_shared_alloc_unlock ( void )

Definition at line 520 of file zend_shared_alloc.c.

◆ zend_shared_memdup()

void * zend_shared_memdup ( void * source,
size_t size )

Definition at line 469 of file zend_shared_alloc.c.

◆ zend_shared_memdup_free()

void * zend_shared_memdup_free ( void * source,
size_t size )

Definition at line 454 of file zend_shared_alloc.c.

◆ zend_shared_memdup_get_put()

void * zend_shared_memdup_get_put ( void * source,
size_t size )

Definition at line 459 of file zend_shared_alloc.c.

◆ zend_shared_memdup_get_put_free()

void * zend_shared_memdup_get_put_free ( void * source,
size_t size )

Definition at line 444 of file zend_shared_alloc.c.

◆ zend_shared_memdup_put()

void * zend_shared_memdup_put ( void * source,
size_t size )

Definition at line 464 of file zend_shared_alloc.c.

◆ zend_shared_memdup_put_free()

void * zend_shared_memdup_put_free ( void * source,
size_t size )

Definition at line 449 of file zend_shared_alloc.c.

◆ zend_shared_memdup_size()

int zend_shared_memdup_size ( void * p,
size_t size )

Definition at line 401 of file zend_shared_alloc.c.

Variable Documentation

◆ smm_shared_globals

ZEND_EXT_API zend_smm_shared_globals* smm_shared_globals
extern

Definition at line 56 of file zend_shared_alloc.c.