แž€แŸ†แžŽแŸ‚แžแŸ’แž˜แžธแž“แŸƒ Cygwin 3.2.0, แž”แžšแžทแžŸแŸ’แžแžถแž“ GNU แžŸแž˜แŸ’แžšแžถแž”แŸ‹ Windows

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž‡แžถแž„แž˜แžฝแž™แž†แŸ’แž“แžถแŸ†แž“แŸƒแž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸ Red Hat แž”แžถแž“แž”แŸ„แŸ‡แž–แžปแž˜แŸ’แž—แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แž”แŸ’แžšแž€แž”แžŠแŸ„แž™แžŸแŸ’แžแŸแžšแž—แžถแž–แž“แŸƒแž€แž‰แŸ’แž…แž”แŸ‹ Cygwin 3.2.0 แžŠแŸ‚แž›แžšแžฝแž˜แž˜แžถแž“แž”แžŽแŸ’แžŽแžถแž›แŸแž™ DLL แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžแŸ’แžšแžถแž”แŸ‹แžแžถแž˜ Linux API แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž“แŸ…แž›แžพ Windows แžŠแŸ‚แž›แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แž…แž„แž€แŸ’แžšแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŠแŸ‚แž›แž”แžถแž“แž”แž„แŸ’แž€แžพแžแžŸแž˜แŸ’แžšแžถแž”แŸ‹ Linux แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžแžทแž…แžแžฝแž…แž”แŸ†แž•แžปแžแŸ” แž€แž‰แŸ’แž…แž”แŸ‹แž“แŸแŸ‡แž€แŸแžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แžงแž”แž€แžšแžŽแŸแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แžŸแŸ’แžแž„แŸ‹แžŠแžถแžšแž™แžผแž“แžธแž€ แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž˜แŸ‰แžถแžŸแŸŠแžธแž“แž˜แŸ แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž…แž„แž€แŸ’แžšแž„ แž”แžŽแŸ’แžŽแžถแž›แŸแž™ แž“แžทแž„แžฏแž€แžŸแžถแžšแž”แž‹แž˜แž€แžแžถแžŠแŸ‚แž›แž”แžถแž“แž”แŸ’แžšแž˜แžผแž›แž•แŸ’แžแžปแŸ†แžŠแŸ„แž™แž•แŸ’แž‘แžถแž›แŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž“แŸ…แž›แžพแžœแžธแž“แžŠแžผแŸ”

แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžŸแŸ†แžแžถแž“แŸ‹แŸ—แŸ–

  • แž”แžถแž“แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžกแžพแž„แžœแžทแž‰แž“แžผแžœแž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹ pseudo-console แžŠแŸ‚แž›แžฅแžกแžผแžœแž“แŸแŸ‡แžแŸ’แžšแžผแžœแž”แžถแž“แž’แŸ’แžœแžพแžฑแŸ’แž™แžŸแž€แž˜แŸ’แž˜แžแŸ‚แž“แŸ…แž–แŸแž›แž”แžพแž€แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžŠแŸ‚แž›แž˜แžทแž“แžแŸ’แžšแžผแžœแž”แžถแž“แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แž“แŸ…แž€แŸ’แž“แžปแž„ cygwin แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜ C11 API แžแŸ’แž˜แžธแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž’แŸ’แžœแžพแž€แžถแžšแž‡แžถแž˜แžฝแž™แž€แžถแžšแžŸแŸ’แž‘แŸ’แžšแžธแž˜แŸ– call_once, cnd_broadcast, cnd_destroy, cnd_init, cnd_signal, cnd_timedwait, cnd_wait, mtx_destroy, mtx_init, mtx_lock, mtx_timedlock, mtx_trylock, mtx_thcrerent, thcrerent,th th rd_exit, thrd_join, thrd_sleep, thrd_yield , tss_create, tss_delete, tss_get, tss_set แŸ”
  • แžแŸ’แžŸแŸ‚แžŸแŸ’แžšแžกแžถแž™แžแŸ’แž˜แžธแžแŸ’แžšแžผแžœแž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž‘แŸ…แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž€แžปแž„แžŸแžผแž› แžŠแžพแž˜แŸ’แž”แžธแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž•แŸ’แž›แžผแžœแž€แžถแžแŸ‹แž€แŸ’แžแžถแžšแž…แžปแž…แžŠแžผแž…แž‡แžถ Ctrl-Z (VSUSP), Ctrl-\ (VQUIT), Ctrl-S (VSTOP), Ctrl-Q (VSTART) แž€แŸแžŠแžผแž…แž‡แžถแžŸแž‰แŸ’แž‰แžถ SIGWINCH . แž–แžธแž˜แžปแž“ แž€แžถแžšแžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แž‚แŸ’แž“แžถ แž“แžทแž„แž‘แžทแž“แŸ’แž“แž“แŸแž™ SIGWINCH แžแŸ’แžšแžผแžœแž”แžถแž“แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแŸ‚แž€แŸ’แž“แžปแž„แžขแŸ†แžกแžปแž„แž–แŸแž›แž€แžถแžšแž แŸ…แž‘แžผแžšแžŸแž–แŸ’แž‘ read() แžฌ select() แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแž˜แžถแž“แž€แŸ†แžŽแžแŸ‹แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž‘แž„แŸ‹ AT_SYMLINK_NOFOLLOW แž‘แŸ…แž˜แžปแžแž„แžถแžš fchmodat() แŸ”
  • แž”แžถแž“แž”แžพแž€แž€แžถแžšแž‘แž‘แžฝแž›แžŸแŸ’แž‚แžถแž›แŸ‹แžšแž“แŸ’แž’ AF_UNIX แžŠแŸ‚แž›แž•แŸ’แžแž›แŸ‹แžŠแŸ„แž™แžœแŸแž‘แžทแž€แžถแžœแžธแž“แžŠแžผแŸ”
  • แžŠแŸ‚แž“แž€แŸ†แžŽแžแŸ‹แž›แžพแž…แŸ†แž“แžฝแž“แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แžปแž˜แžถแžšแžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแž“แž–แžธ 256 แž‘แŸ… 5000 แž“แŸ…แž›แžพแž”แŸ’แžšแž–แŸแž“แŸ’แž’ 64 แž”แŸŠแžธแž แž“แžทแž„แžŠแž›แŸ‹ 1200 แž“แŸ…แž›แžพแž”แŸ’แžšแž–แŸแž“แŸ’แž’ 32 แž”แŸŠแžธแžแŸ”

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

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