แž‚แž˜แŸ’แžšแŸ„แž„ SerenityOS แž”แž„แŸ’แž€แžพแžแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแžŠแžผแž… Unix แžŠแŸ‚แž›แž˜แžถแž“แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž€แŸ’แžšแžถแž แŸ’แžœแžทแž€

แž“แŸ…แž€แŸ’แž“แžปแž„แž–แŸ’แžšแŸ†แžŠแŸ‚แž“แž“แŸƒแž‚แž˜แŸ’แžšแŸ„แž„ Serenity แžขแŸ’แž“แž€แž…แžผแž›แž…แžทแžแŸ’แžแž˜แžฝแž™แž€แŸ’แžšแžปแž˜แž€แŸ†แž–แžปแž„แž”แž„แŸ’แž€แžพแžแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแžŠแžผแž… Unix แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžŸแŸ’แžแžถแž”แžแŸ’แž™แž€แž˜แŸ’แž˜ x86 แžŠแŸ‚แž›แž”แŸ†แž–แžถแž€แŸ‹แžŠแŸ„แž™แžแžบแžŽแŸ‚แž› แž“แžทแž„แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž€แŸ’แžšแžถแž แŸ’แžœแžทแž€แž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“ แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แžšแž…แž“แžถแžกแžพแž„แžแžถแž˜แžšแž…แž“แžถแž”แŸแž‘แŸ’แž˜แž“แŸƒแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแž“แŸ…แž…แžปแž„แž‘แžŸแžœแžแŸ’แžŸแžšแŸแž†แŸ’แž“แžถแŸ† 1990 แŸ” แž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸแžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแžแžถแŸ†แž„แž–แžธแžŠแŸ†แž”แžผแž„ แžŠแžพแž˜แŸ’แž”แžธแž•แž›แž”แŸ’แžšแž™แŸ„แž‡แž“แŸ แž“แžทแž„แž˜แžทแž“แž˜แŸ‚แž“แž•แŸ’แžขแŸ‚แž€แž›แžพแž€แžผแžŠแž“แŸƒแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแžŠแŸ‚แž›แž˜แžถแž“แžŸแŸ’แžšแžถแž”แŸ‹แž“แŸ„แŸ‡แž‘แŸแŸ” แž‘แž“แŸ’แž‘แžนแž˜แž“แžนแž„แž“แŸแŸ‡ แžขแŸ’แž“แž€แž“แžทแž–แž“แŸ’แž’แž”แžถแž“แž€แŸ†แžŽแžแŸ‹แžแŸ’แž›แžฝแž“แžฏแž„แž“แžผแžœแž‚แŸ„แž›แžŠแŸ…แž“แŸƒแž€แžถแžšแž“แžถแŸ†แž™แž€ SerenityOS แž‘แŸ…แž€แžถแž“แŸ‹แž€แž˜แŸ’แžšแžทแžแž˜แžฝแž™แžŠแŸ‚แž›แžŸแž˜แžšแž˜แŸ’แž™แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž„แžถแžšแž”แŸ’แžšแž…แžถแŸ†แžแŸ’แž„แŸƒ แžŠแŸ„แž™แžšแž€แŸ’แžŸแžถแžŸแŸ„แž—แŸแžŽแž—แžถแž–แž“แŸƒแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž…แžปแž„แž‘แžŸแžœแžแŸ’แžŸแžšแŸแž‘แžธ 90 แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž”แž“แŸ’แžแŸ‚แž˜แžœแžถแž‡แžถแž˜แžฝแž™แž“แžนแž„แž‚แŸ†แž“แžทแžแž˜แžถแž“แž”แŸ’แžšแž™แŸ„แž‡แž“แŸแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžขแŸ’แž“แž€แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แžŠแŸ‚แž›แž˜แžถแž“แž”แž‘แž–แžทแžŸแŸ„แž’แž“แŸแž–แžธแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž‘แŸ†แž“แžพแž”แŸ” แž€แžผแžŠแžแŸ’แžšแžผแžœแž”แžถแž“แžŸแžšแžŸแŸแžšแž‡แžถ C++ แž“แžทแž„ แž•แŸ’แž‚แžแŸ‹แž•แŸ’แž‚แž„แŸ‹ แž€แŸ’แžšแŸ„แž˜แžขแžถแž‡แŸ’แž‰แžถแž”แŸแžŽแŸ’แžŽ BSD แŸ”

แž‚แž˜แŸ’แžšแŸ„แž„แž“แŸแŸ‡แž‚แžบแž‡แžถแžงแž‘แžถแž แžšแžŽแŸแžŠแŸแž›แŸ’แžขแž“แŸƒแž€แžถแžšแž–แžทแžแžŠแŸ‚แž›แžแžถแžŠแŸ„แž™แž€แŸ†แžŽแžแŸ‹แž‚แŸ„แž›แžŠแŸ…แž‡แžถแž€แŸ‹แž›แžถแž€แŸ‹แž˜แžฝแž™แž แžพแž™แž”แž“แŸ’แžแžทแž…แž˜แŸ’แžแž„ แŸ— แž–แžธแž˜แžฝแž™แžแŸ’แž„แŸƒแž‘แŸ…แž˜แžฝแž™แžแŸ’แž„แŸƒ แž†แŸ’แž–แŸ„แŸ‡แž‘แŸ…แž˜แžปแž แž‡แžถแž…แŸ†แžŽแž„แŸ‹แž…แŸ†แžŽแžผแž›แž…แžทแžแŸ’แž แžขแŸ’แž“แž€แžขแžถแž…แž”แž„แŸ’แž€แžพแž OS แžŠแŸ‚แž›แž˜แžถแž“แž˜แžปแžแž„แžถแžšแž–แŸแž‰แž›แŸแž‰ แž“แžทแž„แž…แžผแž›แžšแžฝแž˜ แž˜แž“แžปแžŸแŸ’แžŸแžŠแŸ‚แž›แž˜แžถแž“แž…แžทแžแŸ’แžแžŠแžผแž…แž‚แŸ’แž“แžถแŸ”. แž‚แž˜แŸ’แžšแŸ„แž„แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแžšแž”แžŸแŸ‹แžขแŸ’แž“แž€แž“แžทแž–แž“แŸ’แž’แžŠแžผแž…แž‚แŸ’แž“แžถแžšแžฝแž˜แž˜แžถแž“: แž€แžปแŸ†แž–แŸ’แž™แžผแž‘แŸแžšแžŠแŸ‚แž›แž‡แžถแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแŸ’แžšแžถแž”แŸ‹แžแžถแž˜แž€แžปแŸ†แž–แŸ’แž™แžผแž‘แŸแžšแžŠแŸ‚แž›แž˜แžถแž“แž”แŸ’แžšแž–แŸแž“แŸ’แž’แžŠแŸ†แžŽแžพแžšแž€แžถแžš i2003 แž€แŸ’แž“แžปแž„แž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸแžแžถแŸ†แž„แž–แžธแž†แŸ’แž“แžถแŸ† 386แŸ”

แž‚แž˜แŸ’แžšแŸ„แž„ SerenityOS แž”แž„แŸ’แž€แžพแžแž”แŸ’แžšแž–แŸแž“แŸ’แž’แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแžŠแžผแž… Unix แžŠแŸ‚แž›แž˜แžถแž“แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž€แŸ’แžšแžถแž แŸ’แžœแžทแž€

แž›แž€แŸ’แžแžŽแŸˆแž–แžทแžŸแŸแžŸแžŠแŸ‚แž›แž˜แžถแž“แž“แŸ…แžŠแŸ†แžŽแžถแž€แŸ‹แž€แžถแž›แž“แŸƒแž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸแž”แž…แŸ’แž…แžปแž”แŸ’แž”แž“แŸ’แž“แŸ–

  • แž€แžทแž…แŸ’แž…แž€แžถแžšแž…แŸ’แžšแžพแž“แžŠแŸ‚แž›แž‚แžทแžแž‘แžปแž€แž‡แžถแž˜แžปแž“;
  • แž–แž แžปแžแŸ’แžŸแŸ‚แžŸแŸ’แžšแžกแžถแž™;
  • แžŸแž˜แžถแžŸแž’แžถแžแžปแž“แžทแž„แž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸแž”แž„แŸ’แžขแžฝแž… WindowServer;
  • แž€แŸ’แžšแž”แžแŸแžŽแŸ’แžŒแž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แž„แŸ’แž€แžพแžแž€แž˜แŸ’แž˜แžœแžทแž’แžธแž€แŸ’แžšแžถแž แŸ’แžœแžทแž€ LibGUI แž‡แžถแž˜แžฝแž™แž“แžนแž„แžŸแŸ†แžŽแžปแŸ†แž“แŸƒแž’แžถแžแžปแž€แŸ’แžšแžถแž แŸ’แžœแžทแž€;
  • แž”แžšแžทแžŸแŸ’แžแžถแž“แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžšแž…แž“แžถแžŠแŸ‚แž›แž˜แžพแž›แžƒแžพแž‰แž“แŸƒแž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แž€แž˜แŸ’แž˜แžœแžทแž’แžธ;
  • แž‡แž„แŸ‹แž”แžŽแŸ’แžแžถแž‰แžŠแŸ‚แž›แž‚แžถแŸ†แž‘แŸ’แžš ARP, TCP, UDP แž“แžทแž„ ICMP แŸ” แž•แŸ’แž‘แžถแž›แŸ‹แžแŸ’แž›แžฝแž“ แžขแŸ’แž“แž€แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™ DNS;
  • แž”แŸ’แžšแž–แŸแž“แŸ’แž’แžฏแž€แžŸแžถแžšแžŠแŸ‚แž›แž˜แžถแž“แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž›แžพ Ext2 (แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž•แŸ’แž‘แžถแž›แŸ‹ แž“แŸ…แž€แŸ’แž“แžปแž„ C ++);
  • แž”แžŽแŸ’แžŽแžถแž›แŸแž™ C แžŸแŸ’แžแž„แŸ‹แžŠแžถแžšแžŠแžผแž…แž™แžผแž“แžธแž€ (LibC) แž“แžทแž„ แž€แžถแžšแž‡แŸ’แžšแžพแžŸแžšแžพแžŸแž”แžปแž‚แŸ’แž‚แž›แžทแž€ แžงแž”แž€แžšแžŽแŸแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž’แž˜แŸ’แž˜แžแžถ (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime แŸ”แž›แŸ”);
  • แžŸแŸ‚แž›แž”แž“แŸ’แž‘แžถแžแŸ‹แž–แžถแž€แŸ’แž™แž”แž‰แŸ’แž‡แžถแž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แŸ†แž–แž„แŸ‹แž“แžทแž„แž€แžถแžšแž”แŸ’แžแžผแžšแž‘แžทแžŸ I / O;
  • แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹ mmap() แž“แžทแž„แžฏแž€แžŸแžถแžšแžŠแŸ‚แž›แžขแžถแž…แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž”แžถแž“แž€แŸ’แž“แžปแž„แž‘แž˜แŸ’แžšแž„แŸ‹ ELF;
  • แžœแžแŸ’แžแž˜แžถแž“แž“แŸƒ pseudo-FS / proc;
  • แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžšแž“แŸ’แž’แž™แžผแž“แžธแž€แž€แŸ’แž“แžปแž„แžŸแŸ’แžšแžปแž€;
  • แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แžŸแŸ’แžแžถแž“แžธแž™ pseudo-terminals แž“แžทแž„ /dev/pts;
  • แž”แžŽแŸ’แžŽแžถแž›แŸแž™ LibCore แžขแž—แžทแžœแžŒแŸ’แžแžขแŸ’แž“แž€แžŠแŸ„แŸ‡แžŸแŸ’แžšแžถแž™แž–แŸ’แžšแžนแžแŸ’แžแžทแž€แžถแžšแžŽแŸแž”แŸ’แžšแž€แž”แžŠแŸ„แž™แž”แŸ’แžšแžŸแžทแž‘แŸ’แž’แž—แžถแž– (Event loop);
  • แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแž”แžŽแŸ’แžŽแžถแž›แŸแž™ SDL;
  • แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžšแžผแž”แž—แžถแž– PNG;
  • แžŸแŸ†แžŽแžปแŸ†แž“แŸƒแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŠแŸ‚แž›แž—แŸ’แž‡แžถแž”แŸ‹แž˜แž€แž‡แžถแž˜แžฝแž™แŸ– แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž“แžทแž–แž“แŸ’แž’แžขแžแŸ’แžแž”แž‘ แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แžฏแž€แžŸแžถแžš แž แŸ’แž‚แŸแž˜แž‡แžถแž…แŸ’แžšแžพแž“ (Minesweeper แž“แžทแž„ Snake) แž…แŸ†แžŽแžปแž…แž”แŸ’แžšแž‘แžถแž€แŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แž˜แŸ’แž˜แžœแžทแž’แžธ แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž“แžทแž–แž“แŸ’แž’แž–แžปแž˜แŸ’แž–แžขแž€แŸ’แžŸแžš แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž€แžถแžšแž‘แžถแž‰แž™แž€แžฏแž€แžŸแžถแžš แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแŸ’แžšแžถแž”แŸ‹แžแžถแž˜แžŸแŸ’แžแžถแž“แžธแž™แŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹