裸机底层文件。豫
yuyan · 681 行 · 31857 字节 · 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 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681
寻观「底层库」之书。
寻观「客体二号」之「林系统」之书。
寻观「客体二号」之「林底层」之书。
寻观「客体二号」之「原生系统」之书。
寻观「客体二号」之「原生底层」之书。
寻观「客体二号」之「布局」之书。
寻观「客体二号」之「基础」之书。
寻观「客体二号」之「文件系统」之书。
寻观「客体二号」之「模块」之书。
寻观「客体二号」之「裸机底层状态码」之书。
寻观「客体二号」之「裸机底层句柄」之书。
「:文言:豫言操作系统底层接口之裸机后端:文件包(按目录柄授权之打开、状态、目录读、增删改名)。解径之缓冲址,取自「状态_文件系统_路径缓」所存之值。汉语:底层文件后端提供按目录句柄授权的打开、状态、目录读与增删改名;解析路径写入「状态_文件系统_路径缓」指向的缓冲区。:」
「:文言:底文之暂径置于动态柄表之后,各址随表之址而定。汉语:底层文件临时路径位于动态句柄表之后,地址按已分配的表基址计算,避开固定状态格与静态字符串。:」
「状态_底文_绝长」乃化「有」而「整数」也。
「状态_底文_绝长」者会「无」而
「加」于(「底柄_文件暂存」于「元」)于「一六」
也。
「状态_底文_旧路径」乃化「有」而「整数」也。
「状态_底文_旧路径」者会「无」而
「加」于(「底柄_文件暂存」于「元」)于「六零」
也。
「状态_底文_新路径」乃化「有」而「整数」也。
「状态_底文_新路径」者会「无」而
「加」于(「底柄_文件暂存」于「元」)于「五零零」
也。
「状态_底文_绝长2」乃化「有」而「整数」也。
「状态_底文_绝长2」者会「无」而
「加」于(「底柄_文件暂存」于「元」)于「九四零」
也。
「底文_标志_读」者「一」也。
「底文_标志_写」者「二」也。
「底文_标志_追加」者「四」也。
「底文_标志_创建」者「八」也。
「底文_标志_独占」者「一六」也。
「底文_标志_截断」者「三二」也。
「底文_标志_须为目录」者「六四」也。
「底文_含标志」乃化「整数」而化「整数」而「爻」也。
「底文_含标志」者会「标志」而会「位」而
「底柄_非零」于(「位与」于「标志」于「位」)
也。
「:文言:以下三者,本倚客体二号旧主机文件之实现,径改自具,唯用文件系统之原语,使本包不倚旧解释器。汉语:以下三个函数原本借用客体二号旧「主机文件」的实现,现改为直接基于「文件系统」的原语自行实现,使本包不再依赖旧解释器。:」
「是直接子项」乃化「整数」而化「整数」而化「整数」而「爻」也。
「是直接子项」者会「条」而会「址」而会「长」而
虑「路径址」者「读字段」于「条」于「条_路径址」而
虑「路径长」者「读字段」于「条」于「条_路径长」而
「且」
于(「且」于(「不等于」于(「读字段」于「条」于「条_种类」)于「零」)于(「大于」于「路径长」于「长」))
于(「且」于(「等」于(「父长」于「路径址」于「路径长」)于「长」)于(「相同字节」于「路径址」于「址」于「长」))
也。
「项种类」乃化「整数」而「整数」也。
「项种类」者会「项」而
若「有符号大等」于「项」于「零」则
「读字段」于(「条目址」于「项」)于「条_种类」
否则
「零」
也。
「路径项」乃化「整数」而化「整数」而「整数」也。
「路径项」者会「出」而会「长」而
若「有符号大等」于「长」于「零」则
「索引查」于「出」于「长」
否则
「负一」
也。
「:文言:目录柄之基址与基长:柄三初始化时已置为根,与他已开目录柄同一取法。汉语:目录句柄的基址与基长:句柄 3 在初始化时已置为根,与其余已打开的目录句柄取法相同。:」
「底文_基址」乃化「整数」而「整数」也。
「底文_基址」者会「目录柄」而
「读四」于(「加」于(「底柄_槽址」于「目录柄」)于「底柄_偏_路径址」)
也。
「底文_基长」乃化「整数」而「整数」也。
「底文_基长」者会「目录柄」而
「读四」于(「加」于(「底柄_槽址」于「目录柄」)于「底柄_偏_路径长」)
也。
「:文言:目录柄之核:须有效且为目录类,否则报之;成则以出参回其解之绝对长,负数为错码。汉语:目录句柄之核验;无效或非目录各自报码;成功把解析所得的绝对路径长度写入出址,负数表示错误。:」
「底文_解入路径」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「底文_解入路径」者会「目录柄」而会「路径址」而会「路径长」而会「出长」而
若「非」于(「底柄_有效」于「目录柄」)则
「底码_句柄无效」
否则
虑「槽」者「底柄_槽址」于「目录柄」而
虑「类」者「读四」于(「加」于「槽」于「底柄_偏_类别」)而
若「不等于」于「类」于「底柄_类别_目录」则
「底码_非目录」
否则
虑「基址」者「底文_基址」于「目录柄」
而
虑「基长」者「底文_基长」于「目录柄」
而
虑「果」者
「底柄_解析相对」于「基址」于「基长」于「路径址」于「路径长」
于(「读四」于「状态_文件系统_路径缓」)
而
若「小于」于「果」于「零」则(
若「等」于「果」于(「减」于「零」于「一」)则
「底码_无能力」
否则若「等」于「果」于(「减」于「零」于「二」)则
「底码_名太长」
否则
「底码_参数无效」
)
否则
((「写四」于「出长」于「果」);
「底码_成功」)
也。
「:文言:查一空闲之槽序,无则负一。汉语:查一个空闲槽的序号,没有则 -1。:」
「底文_查空闲槽」乃化「整数」而「整数」也。
「底文_查空闲槽」者会「位」而
若「无符号大等」于「位」于「底柄_槽数」则
「减」于「零」于「一」
否则
虑「类」者
「读四」于(「加」于(「底柄_槽址」于(「加」于「位」于「底柄_首柄」))于「底柄_偏_类别」)
而
若「等」于「类」于「底柄_类别_空闲」则
「加」于「位」于「底柄_首柄」
否则
「底文_查空闲槽」于(「加」于「位」于「一」)
也。
「:文言:以已解之绝对路径与柄,试打开或造之,填新槽,出址写新柄。汉语:用已解析的绝对路径与打开标志尝试打开或创建,填充新槽,出址写入新句柄。:」
「底文_落新槽」乃化「整数」而化「整数」而化「整数」而化「整数」而「有」也。
「底文_落新槽」者会「槽」而会「类别」而会「绝长」而会「内容长」而
虑「无」者「写四」于(「加」于「槽」于「底柄_偏_类别」)于「类别」而
虑「无」者「写四」于(「加」于「槽」于「底柄_偏_内容长」)于「内容长」而
虑「无」者「写四」于(「加」于「槽」于「底柄_偏_位置」)于「零」而
虑「无」者「写四」于(「加」于「槽」于「底柄_偏_标志」)于「零」而
「拷贝」于(「读四」于(「加」于「槽」于「底柄_偏_路径址」))
于(「读四」于「状态_文件系统_路径缓」)于「绝长」;
「写四」于(「加」于「槽」于「底柄_偏_路径长」)于「绝长」
也。
「:文言:写新柄于出址,恒返成功之码,便与他分支同型。汉语:把新句柄写入出址,固定返回成功码,便于和其余分支类型一致。:」
「底文_写新柄」乃化「整数」而化「整数」而「整数」也。
「底文_写新柄」者会「新柄」而会「出」而
((「写四」于「出」于「新柄」);
「底码_成功」)
也。
「底文_完成打开」乃
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「底文_完成打开」者会「绝长」而会「标志」而会「出」而
虑「新柄」者「底文_查空闲槽」于「零」而
若「小于」于「新柄」于「零」则
「底码_打开过多」
否则若「大于」于「绝长」于「底柄_路径缓长」则
「底码_名太长」
否则
虑「项」者
「路径项」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
虑「已有」者「有符号大等」于「项」于「零」而
虑「新槽」者「底柄_槽址」于「新柄」而
虑「创建」者「底文_含标志」于「标志」于「底文_标志_创建」而
虑「独占」者「底文_含标志」于「标志」于「底文_标志_独占」而
虑「须目录」者「底文_含标志」于「标志」于「底文_标志_须为目录」而
虑「截断」者「底文_含标志」于「标志」于「底文_标志_截断」而
若「非」于「已有」则(
若「非」于「创建」则
「底码_不存在」
否则若「须目录」则
虑「果」者
「fs建目录」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
(
若「不等于」于「果」于「零」则
「底码_输入输出」
否则
「底文_落新槽」
于「新槽」
于「底柄_类别_目录」于「绝长」
于(「减」于「零」于「一」);
「底文_写新柄」于「新柄」于「出」)
否则
虑「果」者
「fs写文件」
于(「读四」于「状态_文件系统_路径缓」)
于「绝长」于「暂存缓冲」于「零」
而
(
若「不等于」于「果」于「零」则
「底码_输入输出」
否则
「底文_落新槽」于「新槽」于「底柄_类别_文件」于「绝长」于「零」;
「底文_写新柄」于「新柄」于「出」)
)
否则若「且」于「创建」于「独占」则
「底码_已存在」
否则
虑「项类」者「项种类」于「项」而
(
若「且」于「须目录」于(「不等于」于「项类」于「种类_目录」)则
「底码_非目录」
否则若「等」于「项类」于「种类_目录」则
(「底文_落新槽」
于「新槽」于「底柄_类别_目录」于「绝长」
于(「减」于「零」于「一」);
「底文_写新柄」于「新柄」于「出」)
否则若「截断」则
虑「果」者
「fs写文件」
于(「读四」于「状态_文件系统_路径缓」)
于「绝长」于「暂存缓冲」于「零」
而
(
若「不等于」于「果」于「零」则
「底码_输入输出」
否则
「底文_落新槽」于「新槽」于「底柄_类别_文件」于「绝长」于「零」;
「底文_写新柄」于「新柄」于「出」)
否则
虑「数据长」者
「读字段」于(「条目址」于「项」)于「条_数据长」
而
(
若「大于」于「数据长」于「底柄_内容缓长」则
「底码_溢出」
否则
虑「内容址」者
「读四」于(「加」于「新槽」于「底柄_偏_内容址」)
而
虑「无」者「fs读文件」于「项」于「内容址」
而
虑「无」者
「底文_落新槽」
于「新槽」于「底柄_类别_文件」于「绝长」于「数据长」
而
「底文_写新柄」于「新柄」于「出」
)
)
也。
「打开」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「打开」者会「目录柄」而会「路径址」而会「路径长」而会「标志」而会「出」而
若「是原生」于「元」则
「原底_打开」于「目录柄」于「路径址」于「路径长」于「标志」于「出」
否则
虑「解果」者
「底文_解入路径」于「目录柄」于「路径址」于「路径长」于(「状态_底文_绝长」于「元」)
而
若「不等于」于「解果」于「底码_成功」则
「解果」
否则
「底文_完成打开」于(「读四」于(「状态_底文_绝长」于「元」))于「标志」于「出」
也。
「底文_填状态」乃化「整数」而化「整数」而化「整数」而「有」也。
「底文_填状态」者会「出」而会「类」而会「大小」而
虑「无」者「内存填充」于「出」于「零」于「六四」而
虑「文类型」者
若「等」于「类」于「底柄_类别_文件」则「四」否则「三」而
虑「无」者「写一」于(「加」于「出」于「一六」)于「文类型」而
「宽存」于(「加」于「出」于「三二」)于「大小」于「零」
也。
「取状态」乃化「整数」而化「整数」而「整数」也。
「取状态」者会「柄」而会「出」而
若「是原生」于「元」则
「原底_取状态」于「柄」于「出」
否则
若「非」于(「底柄_有效」于「柄」)则
「底码_句柄无效」
否则
虑「槽」者「底柄_槽址」于「柄」
而
虑「类」者「读四」于(「加」于「槽」于「底柄_偏_类别」)
而
虑「路径址」者「读四」于(「加」于「槽」于「底柄_偏_路径址」)
而
虑「路径长」者「读四」于(「加」于「槽」于「底柄_偏_路径长」)
而
虑「项」者「路径项」于「路径址」于「路径长」
而
虑「大小」者
若「等」于「类」于「底柄_类别_文件」则「读四」于(「加」于「槽」于「底柄_偏_内容长」)否则「零」
而
虑「无」者「底文_填状态」于「出」于「类」于「大小」而
「底码_成功」
也。
「取路径状态」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「取路径状态」者会「目录柄」而会「路径址」而会「路径长」而会「标志」而会「出」而
若「是原生」于「元」则
「原底_取路径状态」于「目录柄」于「路径址」于「路径长」于「标志」于「出」
否则
虑「解果」者
「底文_解入路径」于「目录柄」于「路径址」于「路径长」于(「状态_底文_绝长」于「元」)
而
若「不等于」于「解果」于「底码_成功」则
「解果」
否则
虑「绝长」者「读四」于(「状态_底文_绝长」于「元」)
而
虑「项」者
「路径项」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
若「小于」于「项」于「零」则
「底码_不存在」
否则
虑「类」者「项种类」于「项」
而
虑「大小」者
若「等」于「类」于「种类_文件」则「读字段」
于(「条目址」于「项」)于「条_数据长」
否则
「零」
而
虑「文类」者
若「等」于「类」于「种类_文件」则「底柄_类别_文件」否则「底柄_类别_目录」
而
虑「无」者「底文_填状态」于「出」于「文类」于「大小」而
「底码_成功」
也。
「:文言:填六十四字节状态块:偏十六一字节类型,偏三十二八字节大小,余置零。汉语:填 64 字节状态块:偏移 16 处 1 字节类型,偏移 32 处 8 字节大小,其余置零。:」
「底文_文件系统错」乃化「整数」而「整数」也。
「底文_文件系统错」者会「错」而
鉴「错」而
有「零」则「底码_成功」
或有「一」则「底码_不存在」
或有「二」则「底码_非目录」
或有「三」则「底码_已存在」
或有「四」则「底码_目录非空」
或有「五」则「底码_溢出」
或有「六」则「底码_参数无效」
或有「其他」则「底码_输入输出」
也。
「建目录」乃化「整数」而化「整数」而化「整数」而「整数」也。
「建目录」者会「目录柄」而会「路径址」而会「路径长」而
若「是原生」于「元」则
「原底_建目录」于「目录柄」于「路径址」于「路径长」
否则
虑「解果」者
「底文_解入路径」于「目录柄」于「路径址」于「路径长」于(「状态_底文_绝长」于「元」)
而
若「不等于」于「解果」于「底码_成功」则
「解果」
否则
虑「果」者
「fs建目录」于(「读四」于「状态_文件系统_路径缓」)于(「读四」于(「状态_底文_绝长」于「元」))
而
「底文_文件系统错」于「果」
也。
「:文言:文件系统底层错码转底层接口状态码。汉语:文件系统底层错码(错_* 常量)转换为底层接口状态码。:」
「删文件」乃化「整数」而化「整数」而化「整数」而「整数」也。
「删文件」者会「目录柄」而会「路径址」而会「路径长」而
若「是原生」于「元」则
「原底_删文件」于「目录柄」于「路径址」于「路径长」
否则
虑「解果」者
「底文_解入路径」于「目录柄」于「路径址」于「路径长」于(「状态_底文_绝长」于「元」)
而
若「不等于」于「解果」于「底码_成功」则
「解果」
否则
虑「绝长」者「读四」于(「状态_底文_绝长」于「元」)
而
虑「项」者
「路径项」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
若「小于」于「项」于「零」则
「底码_不存在」
否则若「等」于(「项种类」于「项」)于「种类_目录」则
「底码_是目录」
否则
虑「果」者
「fs删除」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
「底文_文件系统错」于「果」
也。
「删目录」乃化「整数」而化「整数」而化「整数」而「整数」也。
「删目录」者会「目录柄」而会「路径址」而会「路径长」而
若「是原生」于「元」则
「原底_删目录」于「目录柄」于「路径址」于「路径长」
否则
虑「解果」者
「底文_解入路径」于「目录柄」于「路径址」于「路径长」于(「状态_底文_绝长」于「元」)
而
若「不等于」于「解果」于「底码_成功」则
「解果」
否则
虑「绝长」者「读四」于(「状态_底文_绝长」于「元」)
而
虑「项」者
「路径项」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
若「小于」于「项」于「零」则
「底码_不存在」
否则若「不等于」于(「项种类」于「项」)于「种类_目录」则
「底码_非目录」
否则
虑「果」者
「fs删除」于(「读四」于「状态_文件系统_路径缓」)于「绝长」
而
「底文_文件系统错」于「果」
也。
「:文言:改名以读写代之:文件读全内容写于新路径而删旧;空目录只可建新而删旧。汉语:改名以读写代替:文件读出全部内容写到新路径再删旧路径;空目录只能新建再删旧目录(不含内容搬迁)。:」
「改名」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「改名」者会「旧目录」而会「旧路径址」而会「旧路径长」而会「新目录」而会「新路径址」而会「新路径长」而
若「是原生」于「元」则
「原底_改名」于「旧目录」于「旧路径址」于「旧路径长」于「新目录」于「新路径址」于「新路径长」
否则
虑「旧解」者
「底文_解入路径」于「旧目录」于「旧路径址」于「旧路径长」
于(「状态_底文_绝长」于「元」)
而
若「不等于」于「旧解」于「底码_成功」则
「旧解」
否则
虑「旧绝长」者「读四」于(「状态_底文_绝长」于「元」)
而
虑「无」者
「拷贝」于(「状态_底文_旧路径」于「元」)于(「读四」于「状态_文件系统_路径缓」)于「旧绝长」
而
虑「旧项」者
「路径项」于(「状态_底文_旧路径」于「元」)于「旧绝长」
而
若「小于」于「旧项」于「零」则
「底码_不存在」
否则
虑「新解」者
「底文_解入路径」
于「新目录」
于「新路径址」于「新路径长」
于(「状态_底文_绝长2」于「元」)
而
若「不等于」于「新解」于「底码_成功」则
「新解」
否则
虑「新绝长」者「读四」于(「状态_底文_绝长2」于「元」)
而
虑「无」者
「拷贝」
于(「读四」于「状态_文件系统_路径缓」)
于(「状态_底文_旧路径」于「元」)于「旧绝长」
而
虑「无」者
「拷贝」
于(「状态_底文_新路径」于「元」)
于(「读四」于「状态_文件系统_路径缓」)于「新绝长」
而
虑「类」者「项种类」于「旧项」
而
若「等」于「类」于「种类_目录」则
虑「建果」者
「fs建目录」于(「状态_底文_新路径」于「元」)于「新绝长」
而
(
若「不等于」于「建果」于「零」则
「底文_文件系统错」于「建果」
否则
虑「无」者
「拷贝」
于(「读四」于「状态_文件系统_路径缓」)
于(「状态_底文_旧路径」于「元」)于「旧绝长」
而
「底文_文件系统错」于(「fs删除」于(「读四」于「状态_文件系统_路径缓」)于「旧绝长」)
)
否则
虑「数据长」者
「读字段」于(「条目址」于「旧项」)于「条_数据长」
而
虑「无」者
「拷贝」
于(「读四」于「状态_文件系统_路径缓」)
于(「状态_底文_旧路径」于「元」)于「旧绝长」
而
「:文言:待办:旧文逾内容缓之限时须先拒之。汉语:待办事项:旧文件超过内容缓冲上限时应先返回溢出。:」
虑「无」者
「fs读文件」
于「旧项」
于(「加」于(「底柄_文件暂存」于「元」)于「一零二四」)
而
虑「写果」者
「fs写文件」
于(「状态_底文_新路径」于「元」)
于「新绝长」
于(「加」于(「底柄_文件暂存」于「元」)于「一零二四」)
于「数据长」
而
(
若「不等于」于「写果」于「零」则
「底文_文件系统错」于「写果」
否则
虑「无」者
「拷贝」
于(「读四」于「状态_文件系统_路径缓」)
于(「状态_底文_旧路径」于「元」)于「旧绝长」
而
「底文_文件系统错」于(「fs删除」于(「读四」于「状态_文件系统_路径缓」)于「旧绝长」)
)
也。
「读链接」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「读链接」者会「目录柄」而会「路径址」而会「路径长」而会「缓址」而会「缓长」而会「出」而
若「是原生」于「元」则
「原底_读链接」于「目录柄」于「路径址」于「路径长」于「缓址」于「缓长」于「出」
否则
「底码_不支持」
也。
「:文言:读目录:句柄三首用而生成,或经打开而已生成;每有目录项二十四字节头加名,游标为已读之偏。汉语:读目录:句柄 3 首次使用时生成列表,或已在打开时生成;每个目录项 24 字节头加名字,游标为已读偏移。:」
「底文_写各子项」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「底文_写各子项」者会「基址」而会「基长」而会「出址」而会「序」而会「写位」而
虑「总数」者「读四」于「状态_文件系统_条目数」而
若「无符号大等」于「序」于「总数」则
「写位」
否则
虑「条」者「条目址」于「序」而
虑「是子」者「是直接子项」于「条」于「基址」于「基长」而
若「非」于「是子」则
「底文_写各子项」于「基址」于「基长」于「出址」于(「加」于「序」于「一」)于「写位」
否则
虑「路径址」者「读字段」于「条」于「条_路径址」
而
虑「路径长」者「读字段」于「条」于「条_路径长」
而
虑「名起」者
「选择」于(「等」于「基长」于「一」)于「一」于(「加」于「基长」于「一」)
而
虑「名长」者「减」于「路径长」于「名起」
而
虑「种类」者「读字段」于「条」于「条_种类」
而
虑「项址」者「加」于「出址」于「写位」
而
虑「无」者「宽存」于「项址」于「零」于「零」
而
虑「无」者「宽存」于(「加」于「项址」于「八」)于「零」于「零」
而
虑「无」者「写四」于(「加」于「项址」于「一六」)于「名长」
而
虑「无」者
「写一」于(「加」于「项址」于「二零」)于(
若「等」于「种类」于「种类_目录」则「三」否则「四」)
而
虑「无」者
「拷贝」于(「加」于「项址」于「二四」)于(「加」于「路径址」于「名起」)于「名长」
而
「底文_写各子项」
于「基址」于「基长」于「出址」
于(「加」于「序」于「一」)
于(「加」于「写位」于(「加」于「二四」于「名长」))
也。
「底文_生目录列」乃化「整数」而「有」也。
「底文_生目录列」者会「柄」而
虑「槽」者「底柄_槽址」于「柄」而
虑「内容长」者「读四」于(「加」于「槽」于「底柄_偏_内容长」)而
若「不等于」于「内容长」于(「减」于「零」于「一」)则
「元」
否则
虑「内容址」者「读四」于(「加」于「槽」于「底柄_偏_内容址」)而
虑「基址」者「读四」于(「加」于「槽」于「底柄_偏_路径址」)而
虑「基长」者「读四」于(「加」于「槽」于「底柄_偏_路径长」)而
虑「写长」者
「底文_写各子项」于「基址」于「基长」于「内容址」于「零」于「零」
而
「写四」于(「加」于「槽」于「底柄_偏_内容长」)于「写长」
也。
「读目录」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「读目录」者会「柄」而会「缓址」而会「缓长」而会「游标址」而会「出」而
若「是原生」于「元」则
「原底_读目录」于「柄」于「缓址」于「缓长」于「游标址」于「出」
否则
若「非」于(「底柄_有效」于「柄」)则
「底码_句柄无效」
否则
虑「槽」者「底柄_槽址」于「柄」
而
虑「类」者「读四」于(「加」于「槽」于「底柄_偏_类别」)
而
若「不等于」于「类」于「底柄_类别_目录」则
「底码_非目录」
否则
虑「无」者「底文_生目录列」于「柄」
而
虑「内容长」者「读四」于(「加」于「槽」于「底柄_偏_内容长」)
而
虑「内容址」者「读四」于(「加」于「槽」于「底柄_偏_内容址」)
而
虑「游标」者「读四」于「游标址」
而
虑「余」者「减」于「内容长」于「游标」而
(
若「无符号小于」于「余」于「零」则
「底码_参数无效」
否则若「等零」于「余」则
((「写四」于「出」于「零」);
「底码_成功」)
否则
虑「拷贝长」者
「选择」于(「大于」于「余」于「缓长」)于「缓长」于「余」
而
虑「无」者
「拷贝」于「缓址」于(「加」于「内容址」于「游标」)于「拷贝长」
而
虑「无」者
「写四」于「游标址」于(「加」于「游标」于「拷贝长」)
而
((「写四」于「出」于「拷贝长」);
「底码_成功」)
)
也。