苹底层。豫
yuyan · 798 行 · 38497 字节 · 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 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798
寻观「底层库」之书。
寻观「客体二号」之「布局」之书。
寻观「客体二号」之「林系统」之书。
寻观「客体二号」之「苹系统」之书。
寻观「客体二号」之「基础」之书。
寻观「客体二号」之「裸机底层状态码」之书。
寻观「客体二号」之「林底层」之书。
「:文言:豫言操作系统底层接口之苹果(macOS)后端:经 libSystem。柄即文件描述符,三为根目录,暂存与 Linux 共用。开以 O_RESOLVE_BENEATH,取径之状以 AT_RESOLVE_BENEATH;建删改名、读链接先受界开父目录。ENOTCAPABLE 为无能力七十六。状态取自 fstatat 之 struct stat,目录取自 __getdirentries64。汉语:豫言操作系统底层接口的 macOS 后端经 libSystem 调用;3 号是根目录句柄,暂存区与 Linux 共用。打开加 O_RESOLVE_BENEATH,路径状态加 AT_RESOLVE_BENEATH;建删目录、改名和读链接先在边界内打开父目录。越界的 ENOTCAPABLE 映成状态码 76。状态取自 fstatat/fstat 的 struct stat(macOS ARM64 布局:st_mode 在 4、st_nlink 在 6、st_ino 在 8、时间在 32、48、64、st_size 在 96),目录项取自 __getdirentries64。待办事项:旧版 macOS 不支持边界标志时的回退、父目录打开后并发改名的竞态。:」
「苹底_目录当前」者(「减」于「零」于「二」)也。
「:文言:初始化:取暂存,开根目录而置于三号。汉语:初始化:向动态区取 256 KiB 暂存(布局同 Linux 后端),打开根目录“/”(O_RDONLY|O_CLOEXEC)并用 dup2 放到 3 号。:」
「苹底_初始化」乃化「有」而「有」也。
「苹底_初始化」者会「无」而
虑「无」者「写四」于「状态_林暂存」于(「取区域」于「二六二一四四」)而
虑「根」者
「苹_开」于「苹底_目录当前」于(「静态串」于『/』)于「一六七七七二一六」于「零」而
若「或者」于(「小于」于「根」于「零」)于(「等」于「根」于「三」)则
「元」
否则
虑「果」者「苹_复制柄」于「根」于「三」而
虑「无」者「苹_关」于「根」而
「元」
也。
「:文言:苹果之模式化为底层之类型,同 Linux 之 S_IFMT。汉语:st_mode 的类型位与 Linux 相同,沿用 林底_模式类型。:」
「:文言:struct stat 化为状态块。汉语:把 macOS 的 struct stat(在 状缓)换成 64 字节状态块。:」
「苹底_填状态」乃化「整数」而「有」也。
「苹底_填状态」者会「出」而
虑「状」者「林底_状缓」于「元」而
虑「模」者「读二」于(「加」于「状」于「四」)而
虑「无」者「林底_写宽」于「出」于(「读四」于「状」)于「零」而
虑「无」者
「林底_写宽」
于(「加」于「出」于「八」)
于(「读四」于(「加」于「状」于「八」))
于(「读四」于(「加」于「状」于「一二」))
而
虑「无」者
「写四」于(「加」于「出」于「一六」)于(「林底_模式类型」于「模」)而
虑「无」者
「写四」于(「加」于「出」于「二零」)于(「位与」于「模」于「四零九五」)而
虑「无」者
「林底_写宽」于(「加」于「出」于「二四」)于(「读二」于(「加」于「状」于「六」))于「零」而
虑「无」者
「林底_写宽」
于(「加」于「出」于「三二」)
于(「读四」于(「加」于「状」于「九六」))
于(「读四」于(「加」于「状」于「一零零」))
而
虑「无」者
「林底_时刻纳秒」
于(「加」于「状」于「三二」)
于(「加」于「出」于「四零」)而
虑「无」者
「林底_时刻纳秒」
于(「加」于「状」于「四八」)
于(「加」于「出」于「四八」)
而
「林底_时刻纳秒」
于(「加」于「状」于「六四」)
于(「加」于「出」于「五六」)
也。
「苹底_柄模式」乃化「整数」而「整数」也。
「苹底_柄模式」者会「柄」而
虑「果」者「苹_柄状态」于「柄」于(「林底_状缓」于「元」)而
若「小于」于「果」于「零」则(「减」于「零」于「一」)否则「读二」
于(「加」于(「林底_状缓」于「元」)于「四」)
也。
「苹底_绝对」乃化「整数」而化「整数」而「爻」也。
「苹底_绝对」者会「址」而会「长」而
「且」于(「大于」于「长」于「零」)于(「等」于(「读一」于「址」)于「四七」)
也。
「:文言:打开之标志化为苹果之 O_ 位;常加 RESOLVE_BENEATH,末段不随则加 NOFOLLOW。汉语:把打开标志换成 macOS 的 O_ 位,并总加 O_CLOEXEC 与 O_RESOLVE_BENEATH;接口标志 128 加 O_NOFOLLOW。:」
「苹底_开标志」乃化「整数」而「整数」也。
「苹底_开标志」者会「标」而
虑「读」者「底柄_非零」于(「位与」于「标」于「一」)而
虑「写」者「底柄_非零」于(「位与」于「标」于「二」)而
虑「方式」者(若「写」则(
若「读」则「二」否则「一」)
否则
「零」)
而
虑「基标」者
「位或」
于「一六七八一三一二」
于(「选择」于(「底柄_非零」于(「位与」于「标」于「一二八」))于「二五六」于「零」)
而
「位或」
于「方式」
于(「位或」
于(「选择」于(「底柄_非零」于(「位与」于「标」于「四」))于「八」于「零」)
于(「位或」
于(「选择」于(「底柄_非零」于(「位与」于「标」于「八」))于「五一二」于「零」)
于(「位或」
于(「选择」于(「底柄_非零」于(「位与」于「标」于「一六」))于「二零四八」于「零」)
于(「位或」
于(「选择」于(「底柄_非零」于(「位与」于「标」于「三二」))于「一零二四」于「零」)
于「基标」))))
也。
「苹底_打开」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_打开」者会「目录」而会「址」而会「长」而会「标」而会「出」而
若「等零」于「长」则
「底码_不存在」
否则若「大于」于「标」于「二五五」则
「底码_参数无效」
否则若「苹底_绝对」于「址」于「长」则
「底码_无能力」
否则
虑「路径」者
「林底_零终」于(「林底_路径甲」于「元」)于「址」于「长」
而
若「小于」于「路径」于「零」则
「底码_名太长」
否则
虑「须目录」者「底柄_非零」于(「位与」于「标」于「六四」)
而
虑「柄」者
「苹_开」
于「目录」
于「路径」
于(「苹底_开标志」于「标」)
于(「选择」于(「底柄_非零」于(「位与」于「标」于「八」))于「四二零」于「零」)
而
若「小于」于「柄」于「零」则
「苹误码」于(「减」于「零」于「柄」)
否则若「且」于「须目录」于(「不等于」于(「林底_模式类型」于(「苹底_柄模式」于「柄」))于「三」)则
((「苹_关」于「柄」);
「底码_非目录」)
否则
((「写四」于「出」于「柄」);
「底码_成功」)
也。
「苹底_取状态」乃化「整数」而化「整数」而「整数」也。
「苹底_取状态」者会「柄」而会「出」而
虑「果」者「苹_柄状态」于「柄」于(「林底_状缓」于「元」)而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则
((「苹底_填状态」于「出」);
「底码_成功」)
也。
「苹底_取路径状态」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_取路径状态」者会「目录」而会「址」而会「长」而会「标」而会「出」而
若「苹底_绝对」于「址」于「长」则
「底码_无能力」
否则
虑「路径」者
「林底_零终」于(「林底_路径甲」于「元」)于「址」于「长」
而
若「小于」于「路径」于「零」则
「底码_名太长」
否则
虑「果」者
「苹_路径状态」
于「目录」
于「路径」
于(「林底_状缓」于「元」)
于(「位或」于「八一九二」于(「选择」于(「底柄_非零」于(「位与」于「标」于「一」))于「零」于「三二」))
而
若「小于」于「果」于「零」则「苹误码」于(「减」于「零」于「果」)否则
((「苹底_填状态」于「出」);
「底码_成功」)
也。
「:文言:苹果之目录项(ino 八、seekoff 八、reclen 二、namlen 二、type 一、名以零终)化为接口之项。汉语:把 __getdirentries64 的记录(d_ino 8、d_seekoff 8、d_reclen 2、d_namlen 2、d_type 1、名字)换成接口目录项(下一游标 8、索引节点 8、名长 4、类型 1、填充 3、名字),类型换算同 Linux。:」
「苹底_转目录项们」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_转目录项们」者会「源」而会「位」而会「止」而会「缓址」而会「已」而
若「有符号大等」于「位」于「止」则
「已」
否则
虑「项」者「加」于「源」于「位」而
虑「记长」者「读二」于(「加」于「项」于「一六」)而
虑「名长」者「读二」于(「加」于「项」于「一八」)而
虑「杂」者「林底_杂」于「元」而
虑「无」者
「林底_写宽」于「杂」于(「读四」于(「加」于「项」于「八」))
于(「读四」于(「加」于「项」于「一二」))
而
虑「无」者
「林底_写宽」于(「加」于「杂」于「八」)于(「读四」于「项」)
于(「读四」于(「加」于「项」于「四」))
而
虑「无」者「写四」于(「加」于「杂」于「一六」)于「名长」而
虑「无」者
「写四」于(「加」于「杂」于「二零」)于(「林底_目录项类型」于(「读一」于(「加」于「项」于「二零」)))
而
虑「全长」者「加」于「二四」于「名长」而
虑「容」者「减」于(「读四」于「状态_林目录容」)于「已」而
虑「头写」者
「选择」于(「大于」于「二四」于「容」)于「容」于「二四」
而
虑「无」者「拷贝」于(「加」于「缓址」于「已」)于「杂」于「头写」而
虑「名写」者
「选择」于(「大于」于「名长」于(「减」于「容」于「头写」))
于(「减」于「容」于「头写」)于「名长」
而
虑「无」者
「拷贝」于(「加」于(「加」于「缓址」于「已」)于「头写」)
于(「加」于「项」于「二一」)于「名写」
而
虑「新已」者「加」于「已」于(「加」于「头写」于「名写」)而
若「或者」于(「有符号大等」于「全长」于「容」)于(「等零」于「记长」)则
「新已」
否则
「苹底_转目录项们」于「源」于(「加」于「位」于「记长」)于「止」于「缓址」于「新已」
也。
「苹底_读尽目录」乃化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_读尽目录」者会「柄」而会「缓址」而会「已」而
若「有符号大等」于「已」于(「读四」于「状态_林目录容」)则
「已」
否则
虑「源」者「林底_目录缓」于「元」而
虑「数」者
「苹_读目录项」于「柄」于「源」于「林底_目录缓长」于(「林底_游标」于「元」)
而
若「有符号小等」于「数」于「零」则
「已」
否则
「苹底_读尽目录」于「柄」于「缓址」于(「苹底_转目录项们」于「源」于「零」于「数」于「缓址」于「已」)
也。
「苹底_读目录」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_读目录」者会「柄」而会「缓址」而会「缓长」而会「游标址」而会「出」而
若「底柄_非零」于(「位或」于(「读四」于「游标址」)于(「读四」于(「加」于「游标址」于「四」)))则
((「写四」于「出」于「零」);
「底码_成功」)
否则
虑「寻」者「苹_寻」于「柄」于「零」于「零」而
若「小于」于「寻」于「零」则
「苹误码」于(「减」于「零」于「寻」)
否则
虑「无」者「写四」于「状态_林目录容」于「缓长」
而
虑「已」者「苹底_读尽目录」于「柄」于「缓址」于「零」
而
虑「无」者「林底_写宽」于「游标址」于「一」于「零」而
((「写四」于「出」于「已」);
「底码_成功」)
也。
「:文言:父目录以 RESOLVE_BENEATH 原子开之;末名另存,供无守界标之诸调用。汉语:用 O_RESOLVE_BENEATH 安全打开父目录,另存末段名称,供 mkdirat、unlinkat、renameat、readlinkat 使用。:」
「苹底_父柄」乃化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_父柄」者会「根」而会「路径」而会「名称」而
虑「长」者「减」于(「林找零址」于「路径」)于「路径」而
若「等零」于「长」则(「减」于「零」于「二」)否则
若「等」于(「读一」于「路径」)于「四七」则(「减」于「零」于「一零七」)否则
虑「斜」者
「林底_末斜」于「路径」于「零」于(「减」于「零」于「一」)
而
若「等」于「斜」于(「减」于「长」于「一」)则(「减」于「零」于「二」)否则
虑「名始」者「加」于「路径」于(「加」于「斜」于「一」)
而
虑「名长」者「减」于「长」于(「加」于「斜」于「一」)
而
虑「无」者
「拷贝」于「名称」于「名始」于(「加」于「名长」于「一」)
而
若「且」
于(「等」于「名长」于「二」)
于(「且」
于(「等」于(「读一」于「名称」)于「四六」)
于(「等」于(「读一」于(「加」于「名称」于「一」))于「四六」))则(「减」于「零」于「一零七」)
否则
若「小于」于「斜」于「零」则「根」否则
虑「无」者「写一」于(「加」于「路径」于「斜」)于「零」
而
虑「父」者
「苹_开」于「根」于「路径」于「一六七八一三一二」于「零」
而
若「小于」于「父」于「零」则
「父」
否则
若「等」
于(「林底_模式类型」于(「苹底_柄模式」于「父」))于「三」则「父」
否则
((「苹_关」于「父」);
(「减」于「零」于「二零」))
也。
「苹底_关父」乃化「整数」而化「整数」而「有」也。
「苹底_关父」者会「根」而会「父」而
若「等」于「根」于「父」则
「元」
否则
虑「无」者「苹_关」于「父」而
「元」
也。
「苹底_父码」乃化「整数」而「整数」也。
「苹底_父码」者会「父」而
「苹误码」于(「减」于「零」于「父」)
也。
「苹底_建目录」乃化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_建目录」者会「目录」而会「址」而会「长」而
若「等零」于「长」则
「底码_不存在」
否则
若「苹底_绝对」于「址」于「长」则
「底码_无能力」
否则
虑「路径」者
「林底_零终」于(「林底_路径甲」于「元」)于「址」于「长」
而
若「小于」于「路径」于「零」则
「底码_名太长」
否则
虑「父」者
「苹底_父柄」于「目录」于「路径」于(「林底_目录缓」于「元」)
而
若「小于」于「父」于「零」则
「苹底_父码」于「父」
否则
虑「果」者
「苹果码」于(「苹_建目录」于「父」于(「林底_目录缓」于「元」)于「四九三」)
而
虑「无」者「苹底_关父」于「目录」于「父」而
「果」
也。
「苹底_删文件」乃化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_删文件」者会「目录」而会「址」而会「长」而
若「等零」于「长」则
「底码_不存在」
否则
若「苹底_绝对」于「址」于「长」则
「底码_无能力」
否则
虑「路径」者
「林底_零终」于(「林底_路径甲」于「元」)于「址」于「长」
而
若「小于」于「路径」于「零」则
「底码_名太长」
否则
虑「父」者
「苹底_父柄」于「目录」于「路径」于(「林底_目录缓」于「元」)
而
若「小于」于「父」于「零」则
「苹底_父码」于「父」
否则
虑「果」者
「苹果码」于(「苹_删」于「父」于(「林底_目录缓」于「元」)于「零」)
而
虑「无」者「苹底_关父」于「目录」于「父」而
「果」
也。
「苹底_删目录」乃化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_删目录」者会「目录」而会「址」而会「长」而
若「等零」于「长」则
「底码_不存在」
否则
若「苹底_绝对」于「址」于「长」则
「底码_无能力」
否则
虑「路径」者
「林底_零终」于(「林底_路径甲」于「元」)于「址」于「长」
而
若「小于」于「路径」于「零」则
「底码_名太长」
否则
虑「父」者
「苹底_父柄」于「目录」于「路径」于(「林底_目录缓」于「元」)
而
若「小于」于「父」于「零」则
「苹底_父码」于「父」
否则
虑「果」者
「苹果码」于(「苹_删」于「父」于(「林底_目录缓」于「元」)于「一二八」)
而
虑「无」者「苹底_关父」于「目录」于「父」而
「果」
也。
「苹底_改名」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_改名」者会「旧目录」而会「旧址」而会「旧长」而会「新目录」而会「新址」而会「新长」而
若「或者」于(「等零」于「旧长」)于(「等零」于「新长」)则
「底码_不存在」
否则
若「或者」于(「苹底_绝对」于「旧址」于「旧长」)于(「苹底_绝对」于「新址」于「新长」)则
「底码_无能力」
否则
虑「旧」者
「林底_零终」于(「林底_路径甲」于「元」)于「旧址」于「旧长」
而
虑「新」者
「林底_零终」于(「林底_路径乙」于「元」)于「新址」于「新长」
而
若「或者」于(「小于」于「旧」于「零」)于(「小于」于「新」于「零」)则
「底码_名太长」
否则
虑「旧父」者
「苹底_父柄」于「旧目录」于「旧」于(「林底_目录缓」于「元」)
而
若「小于」于「旧父」于「零」则
「苹底_父码」于「旧父」
否则
虑「新父」者
「苹底_父柄」
于「新目录」
于「新」
于(「加」于(「林底_目录缓」于「元」)于「四零九六」)
而
若「小于」于「新父」于「零」则
虑「无」者「苹底_关父」于「旧目录」于「旧父」而
「苹底_父码」于「新父」
否则
虑「果」者
「苹果码」于(「苹_改名」
于「旧父」
于(「林底_目录缓」于「元」)
于「新父」
于(「加」于(「林底_目录缓」于「元」)于「四零九六」))
而
虑「无」者「苹底_关父」于「旧目录」于「旧父」
而
虑「无」者「苹底_关父」于「新目录」于「新父」而
「果」
也。
「苹底_读链接」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_读链接」者会「目录」而会「址」而会「长」而会「缓址」而会「缓长」而会「出」而
若「等零」于「长」则
「底码_不存在」
否则
若「苹底_绝对」于「址」于「长」则
「底码_无能力」
否则
虑「路径」者
「林底_零终」于(「林底_路径甲」于「元」)于「址」于「长」
而
若「小于」于「路径」于「零」则
「底码_名太长」
否则
虑「父」者
「苹底_父柄」于「目录」于「路径」于(「林底_目录缓」于「元」)
而
若「小于」于「父」于「零」则
「苹底_父码」于「父」
否则
虑「果」者
「苹_读链接」
于「父」
于(「林底_目录缓」于「元」)于「缓址」于「缓长」
而
虑「无」者「苹底_关父」于「目录」于「父」
而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则若「有符号大等」于「果」于「缓长」则
((「写四」于「出」于「果」);
「底码_溢出」)
否则
((「写四」于「出」于「果」);
「底码_成功」)
也。
「:文言:句柄之术。汉语:句柄包:读写、定位读写、寻址、关闭、同步、设长度、设非阻塞、建管道、初始句柄与句柄类别。:」
「苹底_计数果」乃化「整数」而化「整数」而「整数」也。
「苹底_计数果」者会「果」而会「出」而
若「小于」于「果」于「零」则
((「写四」于「出」于「零」);
「苹误码」于(「减」于「零」于「果」))
否则
((「写四」于「出」于「果」);
「底码_成功」)
也。
「苹底_读」乃化「整数」而化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_读」者会「柄」而会「址」而会「长」而会「出」而
「苹底_计数果」于(「苹_读」于「柄」于「址」于「长」)于「出」
也。
「苹底_写」乃化「整数」而化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_写」者会「柄」而会「址」而会「长」而会「出」而
「苹底_计数果」于(「苹_写」于「柄」于「址」于「长」)于「出」
也。
「苹底_定位读」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_定位读」者会「柄」而会「址」而会「长」而会「偏低」而会「偏高」而会「出」而
「苹底_计数果」于(「苹_定读」于「柄」于「址」于「长」于「偏低」)于「出」
也。
「苹底_定位写」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_定位写」者会「柄」而会「址」而会「长」而会「偏低」而会「偏高」而会「出」而
「苹底_计数果」于(「苹_定写」于「柄」于「址」于「长」于「偏低」)于「出」
也。
「苹底_寻址」乃
化「整数」而
化「整数」而
化「整数」而
化「整数」而
化「整数」而
「整数」
也。
「苹底_寻址」者会「柄」而会「偏低」而会「偏高」而会「起点」而会「出」而
虑「果」者「苹_寻」于「柄」于「偏低」于「起点」而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则
((「林底_写宽」于「出」于「果」于「零」);
「底码_成功」)
也。
「苹底_关闭」乃化「整数」而「整数」也。
「苹底_关闭」者会「柄」而
若「林是进程柄」于「柄」则
((「写四」于(「加」于(「林进程格」于「柄」)于「四」)于「零」);
「底码_成功」)
否则
「苹果码」于(「苹_关」于「柄」)
也。
「苹底_同步」乃化「整数」而化「整数」而「整数」也。
「苹底_同步」者会「柄」而会「标志」而
「苹果码」于(「苹_同步」于「柄」)
也。
「苹底_设长度」乃化「整数」而化「整数」而化「整数」而「整数」也。
「苹底_设长度」者会「柄」而会「长低」而会「长高」而
「苹果码」于(「苹_截」于「柄」于「长低」)
也。
「苹底_设非阻塞」乃化「整数」而化「整数」而「整数」也。
「苹底_设非阻塞」者会「柄」而会「开」而
虑「旧」者「苹_控」于「柄」于「三」于「零」而
若「小于」于「旧」于「零」则
「苹误码」于(「减」于「零」于「旧」)
否则
虑「新」者
若「底柄_非零」于「开」则「位或」于「旧」于「四」否则「位与」于「旧」
于(「位非」于「四」)
而
「苹果码」于(「苹_控」于「柄」于「四」于「新」)
也。
「苹底_建管道」乃化「整数」而化「整数」而「整数」也。
「苹底_建管道」者会「读出」而会「写出」而
虑「对」者「林底_杂」于「元」而
虑「果」者「苹_管道」于「对」而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则
((「写四」于「读出」于(「读四」于「对」));
(「写四」于「写出」于(「读四」于(「加」于「对」于「四」)));
「底码_成功」)
也。
「苹底_取句柄类别」乃化「整数」而化「整数」而「整数」也。
「苹底_取句柄类别」者会「柄」而会「出」而
若「林是进程柄」于「柄」则
((「写四」于「出」于「七」);
「底码_成功」)
否则
虑「模」者「苹底_柄模式」于「柄」而
若「小于」于「模」于「零」则
「底码_句柄无效」
否则
虑「类」者「林底_模式类型」于「模」
而
虑「接口类」者
(
鉴「类」而
有「三」则「二」
或有「四」则「一」
或有「二」则(
若「等零」于(「苹_控设备」于「柄」于「一零七八四九零一三一」于(「林底_杂」于「元」))则「三」否则「四」
)
或有「六」则「六」
或有「其他」则(若「等」于(「位与」于「模」于「六一四四零」)于「四零九六」则「五」否则「零」)
)
而
((「写四」于「出」于「接口类」);
「底码_成功」)
也。
「:文言:基础:时钟、随机、处理器之数。汉语:基础包:时钟(单调时钟编号 6)、随机(getentropy 每次至多 256 字节)、处理器数(sysctlbyname hw.ncpu)。取初始句柄、退出、查询中断、取平台同 Linux 后端之义,另写于此。:」
「苹底_读钟」乃化「整数」而化「整数」而「整数」也。
「苹底_读钟」者会「钟」而会「出」而
虑「果」者「苹_取时」于「钟」于「状态_林时」而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则
((「林底_时刻纳秒」于「状态_林时」于「出」);
「底码_成功」)
也。
「苹底_读单调纳秒」乃化「整数」而「整数」也。
「苹底_读单调纳秒」者会「出」而
「苹底_读钟」于「六」于「出」
也。
「苹底_读墙钟纳秒」乃化「整数」而「整数」也。
「苹底_读墙钟纳秒」者会「出」而
「苹底_读钟」于「零」于「出」
也。
「苹底_取时钟精度」乃化「整数」而化「整数」而「整数」也。
「苹底_取时钟精度」者会「钟号」而会「出」而
若「或者」于(「小于」于「钟号」于「零」)于(「大于」于「钟号」于「一」)则
「底码_参数无效」
否则
虑「果」者
「苹_取时精」于(「选择」于(「等零」于「钟号」)于「零」于「六」)于「状态_林时」
而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则
((「林底_时刻纳秒」于「状态_林时」于「出」);
「底码_成功」)
也。
「苹底_填随机字节」乃化「整数」而化「整数」而「整数」也。
「苹底_填随机字节」者会「址」而会「长」而
若「有符号小等」于「长」于「零」则
「底码_成功」
否则
虑「这次」者
「选择」于(「大于」于「长」于「二五六」)于「二五六」于「长」
而
虑「果」者「苹_取熵」于「址」于「这次」而
若「小于」于「果」于「零」则
「苹误码」于(「减」于「零」于「果」)
否则
「苹底_填随机字节」于(「加」于「址」于「这次」)于(「减」于「长」于「这次」)
也。
「苹底_退出」乃化「整数」而「有」也。
「苹底_退出」者会「码」而
「苹_退出」于「码」
也。
「苹底_取平台」乃化「整数」而「整数」也。
「苹底_取平台」者会「出」而
((「写四」于「出」于「三」);
「底码_成功」)
也。
「苹底_取处理器数」乃化「整数」而「整数」也。
「苹底_取处理器数」者会「出」而
虑「值址」者「林底_杂」于「元」而
虑「长址」者「加」于(「林底_杂」于「元」)于「八」而
虑「无」者「写四」于「值址」于「零」而
虑「无」者「林底_写宽」于「长址」于「四」于「零」而
虑「果」者
「苹_名系统量」于(「静态串」于『hw.ncpu』)于「值址」于「长址」于「零」于「零」而
虑「数」者
(若「小于」于「果」于「零」则「一」否则「读四」于「值址」)
而
((「写四」于「出」于(「选择」于(「有符号小等」于「数」于「零」)于「一」于「数」));
「底码_成功」)
也。
「:文言:终端之模(苹果):TIOCGETA 取七十二字节之 termios(诸标八字节,c_cc 在三十二),原始之模去 BRKINT、ICRNL、INPCK、ISTRIP、IXON 与 ECHO、ICANON、IEXTEN、ISIG,置 CS8,VMIN 一 VTIME 零;行模复其原态;TIOCSETA 置之。汉语:macOS 设终端模式:TIOCGETA(0x40487413)取 72 字节的 termios(各标志 8 字节:输入 0、输出 8、控制 16、本地 24,c_cc 在 32 起,VMIN 下标 16、VTIME 下标 17),第一次取时保存原状态(与 Linux 共用 杂+160 与标志 杂+232);原始模式与 Linux 相同地去掉 BRKINT(0x2)、ICRNL(0x100)、INPCK(0x10)、ISTRIP(0x20)、IXON(0x200) 与 ECHO(0x8)、ICANON(0x100)、IEXTEN(0x400)、ISIG(0x80),置 CS8(0x300);行模式恢复原状态;再用 TIOCSETA(0x80487414)写回。:」
「苹底_设终端模式」乃化「整数」而化「整数」而「整数」也。
「苹底_设终端模式」者会「柄」而会「模」而
虑「端」者「加」于(「林底_候杂」于「元」)于「八零」而
虑「存」者「加」于(「林底_候杂」于「元」)于「一六零」而
虑「标」者「加」于(「林底_候杂」于「元」)于「二三二」而
若「小于」于(「苹_控设备」于「柄」于「一零七八四九零一三一」于「端」)于「零」则
「底码_非终端」
否则
虑「无」者
(
若「等零」于(「读四」于「标」)则
((「拷贝」于「存」于「端」于「七二」);
「写四」于「标」于「一」)
否则
「元」
)
而
虑「无」者
(
若「等」于「模」于「一」则
((「写四」于「端」于(「位与」于(「读四」于「端」)于(「位非」于「八一八」)));
(「写四」
于(「加」于「端」于「一六」)
于(「位或」于(「读四」于(「加」于「端」于「一六」))于「七六八」));
(「写四」
于(「加」于「端」于「二四」)
于(「位与」于(「读四」于(「加」于「端」于「二四」))于(「位非」于「一四一六」)));
(「写一」于(「加」于「端」于「四八」)于「一」);
「写一」于(「加」于「端」于「四九」)于「零」)
否则
「拷贝」于「端」于「存」于「七二」
)
而
「苹果码」于(「苹_控设备」于「柄」于(「位或」于(「左移」于「一」于「三一」)于「四七四八三零八」)于「端」)
也。
「苹底_取终端尺寸」乃化「整数」而化「整数」而「整数」也。
「苹底_取终端尺寸」者会「柄」而会「出」而
虑「窗」者「林底_杂」于「元」而
虑「果」者「苹_控设备」于「柄」于「一零七四二九五九一二」于「窗」而
若「小于」于「果」于「零」则
「底码_非终端」
否则
((「写四」于「出」于(「读二」于(「加」于「窗」于「二」)));
(「写四」于(「加」于「出」于「四」)于(「读二」于「窗」));
「底码_成功」)
也。
「:文言:苹果之读行:同 Linux,自标准入逐字读至换行,不回显。汉语:macOS 读行:与 Linux 相同,逐字节读到换行或文件尾,不回显,去掉行尾回车。:」
「苹读行核」乃化「整数」而化「整数」而「整数」也。
「苹读行核」者会「缓」而会「长」而
若「有符号大等」于「长」于(「减」于「行缓冲大小」于「一」)则
「长」
否则
虑「数」者「苹_读」于「零」于(「加」于「缓」于「长」)于「一」而
若「有符号小等」于「数」于「零」则
(若「等零」于「长」则(「减」于「零」于「一」)否则「长」)
否则若「等」于(「读一」于(「加」于「缓」于「长」))于「一零」则
「长」
否则
「苹读行核」于「缓」于(「加」于「长」于「一」)
也。
「苹读行」乃化「有」而「整数」也。
「苹读行」者会「无」而
虑「缓」者「读四」于「状态_行缓冲」而
虑「长」者「苹读行核」于「缓」于「零」而
若「且」
于(「大于」于「长」于「零」)
于(「等」于(「读一」于(「加」于「缓」于(「减」于「长」于「一」)))于「一三」)则
「减」于「长」于「一」
否则
「长」
也。