เด—เต‚เด—เดฟเตพ M:N เดซเตเดฒเต‹ เดฎเต‹เดกเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เดฟ

เด—เต‚เด—เดฟเตพ เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเดšเตเดšเต M: N เดคเตเดฐเต†เดกเดฟเด‚เด—เต เดฎเต‹เดกเดฒเดฟเดจเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด†เดตเดถเตเดฏเดฎเดพเดฏ เด˜เดŸเด•เด™เตเด™เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจ เด†เดฆเตเดฏ เดธเต†เดฑเตเดฑเต เดชเดพเดšเตเดšเตเด•เตพ Linux เด•เต‡เตผเดฃเดฒเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต. เด…เดŸเดšเตเดš เดตเดพเดคเดฟเดฒเตเด•เตพเด•เตเด•เต เดชเดฟเดจเตเดจเดฟเตฝ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเดšเตเดš API เดคเตเดฑเด•เตเด•เตเดจเตเดจเดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเดคเดพเดฃเต เด—เต‚เด—เดฟเดณเดฟเดจเตเดฑเต† เดธเด‚เดฐเด‚เดญเด‚ เดฎเดพเดฑเตเด• เดฒเดฟเดจเด•เตเดธเต เด•เต‡เตผเดฃเดฒเดฟเดจเดพเดฏเดฟ, M: N เดคเตเดฐเต†เดกเดฟเด‚เด—เต เดฎเต‹เดกเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดฏเต‚เดธเตผ เดธเตเดชเต‡เดธเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟเดฏ เด’เดฐเต เดฎเตพเดŸเตเดŸเดฟ-เดคเตเดฐเต†เดกเดกเต เดธเดฌเตเดธเดฟเดธเตเดฑเตเดฑเด‚ เดฒเดญเตเดฏเดฎเดพเด•เตเด•เตเดจเตเดจเต. เด•เตเดฑเดžเตเดž เด•เดพเดฒเดคเดพเดฎเดธเด‚ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดธเต‡เดตเดจเด™เตเด™เตพ เดจเตฝเด•เดพเตป Google เด‰เดชเดธเดฟเดธเตเดฑเตเดฑเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดคเตเดฐเต†เดกเต เดกเดฟเดธเตเดŸเตเดฐเดฟเดฌเตเดฏเต‚เดทเดจเตเดฑเต† เดทเต†เดกเตเดฏเต‚เดณเดฟเด‚เด—เตเด‚ เดฎเดพเดจเต‡เดœเตเดฎเต†เดจเตเดฑเตเด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เด‡เดŸเดคเตเดคเดฟเดฒเดพเดฃเต เดจเดŸเดคเตเดคเตเดจเตเดจเดคเต, เด‡เดคเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‹เดณเตเด•เดณเตเดŸเต† เดจเดฟเตผเดตเตเดตเดนเดฃเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดธเดจเตเดฆเตผเดญ เดธเตเดตเดฟเดšเตเดšเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเด‚.

เดˆ เดธเดฌเตเดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด‰เดฑเดชเตเดชเดพเด•เตเด•เดพเตป, SwitchTo API เดฒเดฟเดจเด•เตเดธเต เด•เต†เตผเดฃเตฝ เดคเดฒเดคเตเดคเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟ, เดฎเต‚เดจเตเดจเต เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต - เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเด•, เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเด•, เดธเตเดตเดพเดชเตเดชเต เดšเต†เดฏเตเดฏเตเด• (เดธเตเดตเดฟเดšเตเดšเดฟเด‚เด—เต). เด•เต‡เตผเดฃเดฒเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต, เด’เดฐเต เดชเตเดคเดฟเดฏ FUTEX_SWAP เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ เด’เดฐเต เด•เต‹เดกเต เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต, เด…เดจเตเดฌเดจเตเดงเดฎเดพเดฏเดฟ FUTEX_WAIT, FUTEX_WAKE, เด•เต‚เดŸเดพเดคเต† เดฎเตพเดŸเตเดŸเดฟ-เดคเตเดฐเต†เดกเตเดณเตเดณ เดฏเต‚เดธเตผ-เดธเตเดชเต‡เดธเต เดฒเตˆเดฌเตเดฐเดฑเดฟเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเต เดจเตฝเด•เตเดจเตเดจเต. RPC เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เดŸเดพเดธเตโ€Œเด•เตเด•เตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดธเดจเตเดฆเต‡เดถเด™เตเด™เตพ เด•เตˆเดฎเดพเดฑเดพเดจเตเด‚ FUTEX_SWAP เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเดฒเดตเดฟเตฝ, เดŸเดพเดธเตโ€Œเด•เตเด•เตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด’เดฐเต เดธเดจเตเดฆเต‡เดถเด‚ เด•เตˆเดฎเดพเดฑเตเดจเตเดจเดคเดฟเดจเต, FUTEX_WAIT, FUTEX_WAKE เดŽเดจเตเดจเดฟเดตเดฏเดฟเดฒเต‡เด•เตเด•เต เด•เตเดฑเดžเตเดžเดคเต เดจเดพเดฒเต เด•เต‹เดณเตเด•เดณเต†เด™เตเด•เดฟเดฒเตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด…เดคเต‡เดธเดฎเดฏเด‚ FUTEX_SWAP เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ 5-10 เดฎเดŸเด™เตเด™เต เดตเต‡เด—เดคเตเดคเดฟเตฝ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚.

เด—เต‚เด—เดฟเตพ M:N เดซเตเดฒเต‹ เดฎเต‹เดกเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เดฟ

เดจเดฟเดฒเดตเดฟเตฝ, เดซเตเดฒเต‹ เดฎเต‹เดกเดฒเตเด•เตพ 1: 1, N: 1 เดŽเดจเตเดจเดฟเดตเดฏเดพเดฃเต เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เดชเตเดฐเดงเดพเดจเดฎเดพเดฏเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต. 1:1 เดฎเต‹เดกเตฝ เด†เดฃเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดŽเตป.เดชเดฟ.เดŸเดฟ.เดŽเตฝ (POSIX เดคเตเดฐเต†เดกเตเด•เตพ) เด•เต‚เดŸเดพเดคเต† LinuxThreads, เด•เต‚เดŸเดพเดคเต† เด•เต‡เตผเดฃเตฝ เดคเดฒเดคเตเดคเดฟเดฒเตเดณเตเดณ เด’เดฐเต เดคเตเดฐเต†เดกเดฟเดฒเต‡เด•เตเด•เต (เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดทเตป เดทเต†เดกเตเดฏเต‚เดณเดฟเด‚เด—เต เดฏเต‚เดฃเดฟเดฑเตเดฑเต) เด’เดฐเต เดฏเต‚เดธเตผ-เดธเตโ€Œเดชเต‡เดธเต เดคเตเดฐเต†เดกเดฟเดจเตเดฑเต† เดจเต‡เดฐเดฟเดŸเตเดŸเตเดณเตเดณ เดฎเดพเดชเตเดชเดฟเด‚เด—เต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต. N:1 เดฎเต‹เดกเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต GNU Pth, เดฏเต‚เดธเตผ-เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเดฒเต‡เด•เตเด•เต เดคเตเดฐเต†เดกเต เดทเต†เดกเตเดฏเต‚เดณเดฟเด‚เด—เต เด•เตŠเดฃเตเดŸเตเดตเดฐเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด•เต‡เตผเดฃเดฒเดฟเดจเต เดฏเต‚เดธเตผ-เดคเตเดฐเต†เดกเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด…เดฑเดฟเดฏเดพเดคเต† เดคเดจเตเดจเต† เด•เต‡เตผเดฃเดฒเดฟเดฒเต† เด’เดฐเต เดคเตเดฐเต†เดกเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป N เดฏเต‚เดธเตผ-เดธเตโ€Œเดชเต‡เดธเต เดคเตเดฐเต†เดกเตเด•เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.

1:1 เดฎเต‹เดกเดฒเดฟเดจเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดชเต‹เดฐเดพเดฏเตเดฎ เด•เต†เตผเดฃเดฒเดฟเดจเตเด‚ เดฏเต‚เดธเตผ เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเดจเตเด‚ เด‡เดŸเดฏเดฟเดฒเตเดณเตเดณ เด•เต‹เตบเดŸเต†เด•เตโ€Œเดธเตโ€Œเดฑเตเดฑเต เดธเตเดตเดฟเดšเตเดšเดฟเด‚เด—เดฟเดจเตเดฑเต† เดตเดฒเดฟเดฏ เด“เดตเตผเดนเต†เดกเดพเดฃเต. N:1 เดฎเต‹เดกเตฝ เดˆ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดชเด•เตเดทเต‡ เดชเตเดคเดฟเดฏเตŠเดฐเต†เดฃเตเดฃเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต - เด•เต‡เตผเดฃเดฒเดฟเดฒเต† เด’เดฐเต เดคเตเดฐเต†เดกเต เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดทเตป เดทเต†เดกเตเดฏเต‚เดณเดฟเด‚เด—เดฟเดจเตเดฑเต† เด…เดตเดฟเดญเดพเดœเตเดฏ เดฏเต‚เดฃเดฟเดฑเตเดฑเดพเดฏเดคเดฟเดจเดพเตฝ, เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด•เต‡เตผเดฃเดฒเดฟเดฒเต† เด’เดฐเต เดคเตเดฐเต†เดกเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดคเตเดฐเต†เดกเตเด•เตพเด•เตเด•เต เดธเดฟเดชเดฟเดฏเต เด•เต‹เดฑเตเด•เดณเดฟเดฒเตเดŸเดจเต€เดณเด‚ เดธเตเด•เต†เดฏเดฟเตฝ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดฌเดจเตเดงเดฟเดคเดฎเดพเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เด’เดฐเตŠเดฑเตเดฑ เดธเดฟเดชเดฟเดฏเต เด•เต‹เตผ.

เดŽเด‚:เดŽเตป เดฎเต‹เดกเตฝ เดนเตˆเดฌเตเดฐเดฟเดกเต เด†เดฃเต, เด•เต‚เดŸเดพเดคเต† เดŽเตป เดฏเต‚เดธเตผเดธเตโ€Œเดชเต‡เดธเต เดคเตเดฐเต†เดกเตเด•เตพ เดŽเด‚ เด•เต‡เตผเดฃเตฝ เดคเตเดฐเต†เดกเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดชเตเดชเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดชเต‹เดฐเดพเดฏเตเดฎเด•เดณเตเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเต เดธเดจเตเดฆเตผเดญ เดธเตเดตเดฟเดšเตเดšเต เด“เดตเตผเดนเต†เดกเตเด‚ เดธเดฟเดชเดฟเดฏเต เด•เต‹เดฑเตเด•เดณเดฟเดฒเตเดŸเดจเต€เดณเด‚ เดธเตโ€Œเด•เต†เดฏเดฟเดฒเดฟเด‚เด—เตเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเต. เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดธเตเดฅเดฒเดคเตเดคเต เดคเตเดฐเต†เดกเต เดทเต†เดกเตเดฏเต‚เดณเตผ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฑเต†เดฏเตเด‚ เด•เต‡เตผเดฃเตฝ เดทเต†เดกเตเดฏเต‚เดณเดฑเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดเด•เต‹เดชเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเต†เด•เตเด•เดพเดจเดฟเดธเด™เตเด™เดณเตเดŸเต† เด†เดตเดถเตเดฏเด•เดคเดฏเตเดŸเต†เดฏเตเด‚ เดตเดฒเดฟเดฏ เดธเด™เตเด•เต€เตผเดฃเดคเดฏเดพเดฃเต เดˆ เด“เดชเตเดทเดจเตเดฑเต† เดตเดฟเดฒ.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•