
What is memory and why is it needed?
. , , . ? , «» , , - 16Gb DDR4 2666MHz. , , β , , , . , , ( ) .
-, , () , SWAP- .
-, , , «», , , . « », , 4 RAM ( 32- ) ( 64-).
, , . , ? :
() ( ) .
.
.
. , , , .. .. . β . β . - , : , .
, . , , runtime . , , .
Python
Python β . . . , Pythonβ CPython, - , - :)
Python- , , . Python , .
Pythonβ. CPython , . , .
. β , .., . . , Python . β , .. Python β .
. ( 512 ) Python . , . RAM .
? :
β ( 256 ), .
β ( 4 ).
β , .
. Pythonβ - . , . «»? . . ? . β , Python. - , . , , .
. ( , ).
β used, full empty. Full , . Empty β ( ). Used β , , .
Python . , Python used- . used- , empty-, ( empty used). empty- , .
. . . 8, 16, 24, 32 β¦. 512 . 44 , 48 . ( , untouched-, , free-, ). , , . , .
GIL
, Python, , . Python :
.
.
Python β , , , PyObject. PyObject : ob_refcnt
β , ob_type
β , .
β ob_refcnt
. . , , .. ( - ), . , , .. ( ), . 0 β Python ( , , ).
, . . CPython GIL β Global Interpreter Lock. , , GIL β β . , , .
β (garbage collector), . , ? , , A B, B β A. , A B, . ( gc, Python 1.5).
: GC (-, ) , Python. , . β .
, . . GC . . , . , . . : , . , , .
. . , , Python , . , Python .
Python. , , .
?
:
.
, Python .
Memory Mapping.
.
:)