1 # Create a new segment (pool of memory for allocating chunks from) in the form 2 # of an *allocation descriptor* that can be passed to the memory allocator 3 # (defined in a later layer). 4 # 5 # Currently an allocation descriptor consists of just the bounds of the pool of 6 # available memory: 7 # 8 # curr: address 9 # end: address 10 # 11 # This isn't enough information to reclaim individual allocations. We can't 12 # support arbitrary reclamation yet. 13 14 == code 15 # instruction effective address register displacement immediate 16 # . op subop mod rm32 base index scale r32 17 # . 1-3 bytes 3 bits 2 bits 3 bits 3 bits 3 bits 2 bits 2 bits 0/1/2/4 bytes 0/1/2/4 bytes 18 19 Entry: # manual test 20 # var ad/ecx: allocation-descriptor 21<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><title>Python: package ranger.ext</title> </head><body bgcolor="#f0f0f8"> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading"> <tr bgcolor="#7799ee"> <td valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"> <br><big><big><strong><a href="ranger.html"><font color="#ffffff">ranger</font></a>.ext</strong></big></big></font></td ><td align=right valign=bottom ><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/hut/ranger/ranger/ext/__init__.py">/home/hut/ranger/ranger/ext/__init__.py</a></font></td></tr></table> <