Funkce správy paměti

(alloc n-alloc)
 
Argumenty:
 
n-alloc
- integer - velikost alokované paměti
 
Popis:
  - nastaví velikost segmentu k použití funkcí expand
 
Návratové hodnoty:
  - předchozí nastavení n-alloc
 
Příklady:
  _$ (alloc 100) vrací 1000

Podívej se na funkci expand.

(expand n-expand)
 
Argumenty:
 
n-expand
- integer - indikuje množství alokované paměti. Paměť je alokována jako:
      n-alloc - volná paměť symbolů
      n-alloc - volná paměť řetězců
      n-alloc - volné usubr
      n-alloc - volné real
      n-alloc * n-expand konstantních buňek
    - kde n-alloc je aktuální velikost segmentu
 
Popis:
  - celé číslo - reprezentující počet volných buněk dělitelných n-allac
 
Návratové hodnoty:
  - integer - indikující volné buňky (dělitelné n-alloc)
 
Příklady:
  Nastaví velikost segmentu na 100:
  _$ (alloc 100)
    vrací 1000
  Alokace paměti pro další přidávané segmeny:
  _$ (expand 2)
    vrací 82

(gc)
 
Popis:
  - spustí garbage collector (sběrač smetí), který vyčistí paměť

(mem)
 
Argumenty:
 
cislo
- reálné číslo
 
Popis:
  - zobrazí aktuální stav paměti AutoLISPu
  - parametry:
    GC calls - počet volání gc od startu AutoLISPu
    GC run time - čas zabraný sběrem gc (v ms)
    PgSz - velikost stránky dynamické paměti (v KB)
    Used - počet použitých stránek
    Free - počet volných stránek
    FMCL - největší volná oblast stránek
    Sengs - počet alokovaných segmentů
    Type - interní popis typů objektů alokovaných v tomto segmentu. Obsahuje:
      lisp stacks - interní zásobníky LISPu
      bytecode area - moduly kompilovaného kodu funkcí
      CONS memory - objekty CONS
      ::new - netypové požadavky na paměť, používající tento segment
      DM Str - těla dynamických řetězců
      DMxx memory - všechny ostatní uzly LISPu
      bstack body - interní struktura pro použitá pro IO operace
 
Návratová hodnota:
  - nil
 
Příklady:
  (mem)  
    vrací:
  ; GC calls: 23; GC run time: 298 ms
  Dynamic memory segments statistic:
 
PgSz
Used
Free
FMCL
Segs
Type
 
512
79
48
48
1
lisp stacks
 
256
3706
423
142
16
bytecode area
 
4096
320
10
10
22
CONS memory
 
32
769
1213
1089
1
::new
 
4096
168
12
10
12
DM Str
 
4096
222
4
4
15
DMxx memory
 
128
4
507
507
1
bstack body
  Segment size: 65536, total used: 68, free: 0
  nil