装载。豫
yuyan · 145 行 · 7342 字节 · UTF-8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
寻观「底层库」之书。
寻观「客体二号」之「布局」之书。
寻观「客体二号」之「平台」之书。
寻观「客体二号」之「基础」之书。
寻观「客体二号」之「实例」之书。
寻观「客体二号」之「堆」之书。
寻观「客体二号」之「对象」之书。
寻观「客体二号」之「模块」之书。
寻观「客体二号」之「链接」之书。
寻观「客体二号」之「文件系统」之书。
寻观「客体二号」之「宿主对象」之书。
寻观「客体二号」之「主机文件」之书。
寻观「客体二号」之「解释」之书。
寻观「客体二号」之「初始化」之书。
「:文言:模块之动态装载:自文件系统读一模块,立新实例,解析、初置、链接,行其起始函数,返其实例号。汉语:动态装载(在入口驱动循环里办“加载模块”请求时调用):路径规范后查文件系统,把模块字节读进堆里的原始块,为它建实例记录、切换到新实例的上下文,依次解析各节、初始化全局、发现宿主原型类型、初始化元素与数据段、给边表池分配空间、尝试链接各导入、运行起始函数(若有),再存回上下文并切回请求者的实例。装载期间禁止回收,使新实例的各块不被误收;成功返回实例号(≥ 1),失败返回负数:-1 路径无效,-2 不存在,-3 不是文件,-4 长度不合或实例已满,-5 读文件失败。模块内容不合规范时执行器直接致命退出(不验证模块,信任编译器产物)。起始函数里不得再发请求。:」
「负三」者(「减」于「零」于「三」)也。
「负四」者(「减」于「零」于「四」)也。
「负五」者(「减」于「零」于「五」)也。
「装载新实例」乃化「整数」而化「整数」而化「整数」而化「整数」而「整数」也。
「装载新实例」者会「项」而会「数据长」而会「实例」而会「名」而
虑「无」者
(「写四」于「状态_回收禁」于(「加」于(「读四」于「状态_回收禁」)于「一」))而
虑「记」者「实例记录」于「实例」而
虑「无」者(「清零」于「记」于「实例记录长」)而
虑「块」者「分配原始块」于「数据长」而
虑「无」者(「登记原始块」于「实例」于「块」)而
虑「果」者「fs读文件」于「项」于(「加」于「块」于「一六」)而
若「不等于」于「果」于「零」
则
((「写四」于「状态_回收禁」于(「减」于(「读四」于「状态_回收禁」)于「一」));
「负五」)
否则
虑「名长」者「字节数组长」于「名」
而
虑「名块」者「分配原始块」于「名长」
而
虑「无」者(「登记原始块」于「实例」于「名块」)
而
虑「无」者
(「拷贝」于(「加」于「名块」于「一六」)于(「字节数组址」于「名」)于「名长」)
而
虑「无」者
(「写字段」于「记」于「记录_名址」于(「加」于「名块」于「一六」))
而
虑「无」者(「写字段」于「记」于「记录_名长」于「名长」)
而
虑「原」者「读四」于「状态_当前实例」
而
虑「原函」者「读四」于「状态_函」
而
虑「续栈」者「读四」于「状态_续栈针」
而
虑「无」者(「保存上下文」于「原」)
而
虑「无」者(「清零」于「上下文首」于「上下文长」)
而
虑「无」者(「写四」于「状态_模块长」于「数据长」)
而
虑「无」者
(「写四」于「状态_模块址」于(「加」于「块」于「一六」))
而
虑「无」者(「写四」于「状态_当前实例」于「实例」)
而
虑「无」者「解析各段」于「元」
而
虑「无」者
(「分配区域」于「状态_边表池」于(「乘」于(「节长」于「一零」)于「八」))
而
虑「无」者「初始化全局」于「元」
而
虑「无」者「发现宿主类型」于「元」
而
虑「无」者「初始化元素」于「元」
而
虑「无」者「初始化数据」于「元」
而
虑「无」者「链接全部导入」于「零」
而
虑「无」者
(
若「有符号大等」于(「读四」于「状态_起始函数」)于「零」
则
((「运行函数」于(「读四」于「状态_起始函数」)于「续栈」);
(「若则致命」
于(「不等于」于(「读四」于「状态_请求」)于「零」)
于「一二七」
于(「静态串」于『起始函数里不得发出请求』)))
否则
「元」
)
而
虑「无」者(「保存上下文」于「实例」)
而
虑「无」者(「写字段」于「记」于「记录_状态」于「一」)
而
虑「无」者
(「写四」于「状态_实例数」于(「加」于「实例」于「一」))
而
虑「无」者(「载入上下文」于「原」)
而
虑「无」者(「写四」于「状态_当前实例」于「原」)
而
虑「无」者(「写四」于「状态_函」于「原函」)
而
虑「无」者
(「写四」于「状态_回收禁」于(「减」于(「读四」于「状态_回收禁」)于「一」))
而
「实例」
也。
「加载实例」乃化「整数」而化「整数」而「整数」也。
「加载实例」者会「路径」而会「名」而
虑「无」者(「空引用检」于「路径」)而
虑「无」者(「空引用检」于「名」)而
虑「出」者「读四」于「状态_文件系统_路径缓」而
虑「长」者「规范参数」于「路径」于「出」而
若「小于」于「长」于「零」则
「负一」
否则
虑「项」者「索引查」于「出」于「长」而
若「小于」于「项」于「零」则
「负二」
否则
(
若「不等于」于(「项种类」于「项」)于「种类_文件」则
「负三」
否则
虑「数据长」者
「读字段」于(「条目址」于「项」)于「条_数据长」
而
虑「实例」者「读四」于「状态_实例数」
而
若「或者」
于(「或者」于(「小于」于「数据长」于「八」)于(「无符号大于」于「数据长」于「四一九四三零四」))
于(「无符号大等」于「实例」于「最大实例数」)
则
「负四」
否则
「装载新实例」于「项」于「数据长」于「实例」于「名」
)
也。