RTOS рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрд░реА рд╕рдЪреНрдЪрд╛рдИред рдЕрдиреБрдЪреНрдЫреЗрдж # 14ред рд╕реНрдореГрддрд┐ рдХреА рдзрд╛рд░рд╛рдПрдВ: рдкрд░рд┐рдЪрдп рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рд╕реЗрд╡рд╛рдПрдВ



рд╕реНрдореГрддрд┐ рдХреЗ рдЕрдиреБрднрд╛рдЧреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ (# 6) рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдкрд╣рд▓реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд╣рд╛рдВ рд╕реА рдореЙрд▓реЛрдХ () рднрд╛рд╖рд╛ рдХреЗ рдорд╛рдирдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХреА рдЧрдИ рдереАред рдПрдХ рд╡рд┐рднрд╛рдЬрди рдПрдХ рдореЗрдореЛрд░реА рдкреВрд▓ (рдореЗрдореЛрд░реА рдкреВрд▓) рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреНрд╖реЗрддреНрд░ рд╣реИред рд╢реЗрдпрд░рд┐рдВрдЧ рдореЗрдореЛрд░реА рдордЬрд╝рдмреВрддреА рд╕реЗ рдФрд░ рдирд┐рд░реНрдзрд╛рд░рдХ рд░реВрдк рд╕реЗ рдЖрд╡рдВрдЯрд┐рдд рдФрд░ рдореБрдХреНрдд рдореЗрдореЛрд░реА рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдЪреАрд▓рд╛ рддрд░реАрдХрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред

рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ:
рдЕрдиреБрдЪреНрдЫреЗрдж # 13ред рдЯрд╛рд╕реНрдХ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдЕрд╕рдорд░реНрдерд┐рдд рдПрдкреАрдЖрдИ рдХреЙрд▓
рдЕрдиреБрдЪреНрдЫреЗрдж # 12 рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛рдПрдБ
рдЕрдиреБрдЪреНрдЫреЗрдж # 11ред рдХрд╛рд░реНрдп: рд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдЪрдп
рдЕрдиреБрдЪреНрдЫреЗрдж # 10 рд╕рдордпрдмрджреНрдзрдХ: рдЙрдиреНрдирдд рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдФрд░ рд╕рдВрджрд░реНрдн рд╕рдВрд░рдХреНрд╖рдг
рдЕрдиреБрдЪреНрдЫреЗрдж # 9 рд╕рдордпрдмрджреНрдзрдХ: рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдЕрдиреБрдЪреНрдЫреЗрдж # 8 рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ: рдЖрдВрддрд░рд┐рдХ рдбрд┐рдЬрд╛рдЗрди рдФрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди
рдЕрдиреБрдЪреНрдЫреЗрдж # 7 рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ: рдкрд░рд┐рдЪрдп
рдЕрдиреБрдЪреНрдЫреЗрдж # 6 рдЕрдиреНрдп RTOS рд╕реЗрд╡рд╛рдПрдВ
рдЕрдиреБрдЪреНрдЫреЗрдж # рел рдХрд╛рд░реНрдп рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рдФрд░ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди
рдЕрдиреБрдЪреНрдЫреЗрдж # 4 рдХрд╛рд░реНрдп, рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ, рдФрд░ рд╡реНрдпрд╡рдзрд╛рди
рдЕрдиреБрдЪреНрдЫреЗрдж # рей рдХрд╛рд░реНрдп рдФрд░ рдпреЛрдЬрдирд╛
рдЕрдиреБрдЪреНрдЫреЗрдж # 2 рдЖрд░рдЯреАрдУрдПрд╕: рд╕рдВрд░рдЪрдирд╛ рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЛрдб
рдЕрдиреБрдЪреНрдЫреЗрдж # 1ред рдЖрд░рдЯреАрдУрдПрд╕: рдкрд░рд┐рдЪрдпред

рдЕрдиреБрднрд╛рдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдореЗрдВ, рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдирд┐рд░реНрдорд╛рдг рд╕рдордп рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдПрдХ рдПрдХрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ 16 рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рддрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рд╡реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рддреЛ рдЗрди рдкреВрд▓реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдФрд░ рд╕реЗрд╡рд╛ рдХреЙрд▓ рдЖрд╡реЗрджрди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред

рдПрдХ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреЗ рдмреНрд▓реЙрдХреЛрдВ рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╕реНрдореГрддрд┐ рдХреНрд╖реЗрддреНрд░ рд╣реИред рдбреЗрд╡рд▓рдкрд░ рдХрд╛ рдкреНрд░рддреНрдпреЗрдХ рдкреВрд▓ рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдХреЗ рдЖрдХрд╛рд░ рдФрд░ рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рд╣реЛрддрд╛ рд╣реИред рдХрд╛рд░реНрдп рдореЗрдореЛрд░реА рдХреЗ рдЖрд╡рдВрдЯрд┐рдд рд╡рд░реНрдЧреЛрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рднрдВрдбрд╛рд░рдг рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреЗрддрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрд╡рдВрдЯрд┐рдд рдЕрдиреБрднрд╛рдЧ рдХреЗ рдмрд╛рд╣рд░ рдбреЗрдЯрд╛ рдирд╣реАрдВ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред API рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдкреЙрдЗрдВрдЯрд░ рдкрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдХрд┐рд╕реА рднреА рдХрд╛рд░реНрдп рд╕реЗ рдПрдХ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдореБрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╡рд┐рднрд╛рдЬрди рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдЬрдм рдХреЛрдИ рд╕реНрд╡рддрдВрддреНрд░ рд╡рд┐рднрд╛рдЬрди рдирд╣реАрдВ рд╣реИ, рддреЛ рдЪрдпрдирд┐рдд рдПрдкреАрдЖрдИ рдХреЙрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдФрд░ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рддреНрд░реБрдЯрд┐ рдпрд╛ рдЕрдиреБрд░реЛрдз рдХрд╛ рдирд┐рд▓рдВрдмрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдореЗрдореЛрд░реА рд╡рд┐рднрд╛рдЬрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛


рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛


рдЕрдзрд┐рдХрд╛рдВрд╢ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рддрд░рд╣, рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореБрдЦреНрдп рд░реВрдк рд╕реЗ nuse_config.h рдореЗрдВ #define рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЦреНрдп рдкреИрд░рд╛рдореАрдЯрд░ NUSE_PARTITION_POOL_NUMBER рд╣реИ , рдЬреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрд╡реЗрджрди рдореЗрдВ рдХрд┐рддрдиреЗ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 0 рд╣реИ (рдпрд╛рдиреА, рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рдбреЗрд╡рд▓рдкрд░ 0 рд╕реЗ 16 рддрдХ рдХреЛрдИ рднреА рдорд╛рди рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЕрдиреНрдп рдорд╛рди рдПрдХ рд╕рдВрдХрд▓рди рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдиреЗрдВрдЧреЗ , рдЬреЛ nuse_config_check.h рдореЗрдВ рд╕рддреНрдпрд╛рдкрди рдХреЗ рджреМрд░рд╛рди рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдпрд╣ nuse_config.c рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдФрд░) , рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ), рдЬреЛ # рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рдВрдХрд▓рди рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред

рдПрдХ рдЧреИрд░-рдЕрдХреНрд╖реАрдп рдореВрд▓реНрдп рдЪреБрдирдирд╛ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдФрд░ рдЙрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреЗ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред рд░реЛрдо рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдЙрдкрдпреБрдХреНрдд рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВред рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╣реЛрдЧреАред рдпрд╣ рдЪрдпрди рдПрдкреАрдЖрдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рднреА рд╕рдХреНрд░рд┐рдп рдХрд░рддрд╛ рд╣реИред

рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░реЗрдВ


рдирд╛рднрд┐рдХ рдПрд╕рдИ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдПрдкреАрдЖрдИ рдлрд╝рдВрдХреНрд╢рди (рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЙрд▓) nuse_config.h рдореЗрдВ #define рдирд┐рд░реНрджреЗрд╢ рджреНрд╡рд╛рд░рд╛ рд╕рдХреНрд░рд┐рдп рд╣реЛрддрд╛ рд╣реИред рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЗ рд▓рд┐рдП, рдЗрдирдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

NUSE_PARTITION_ALLOCATE
NUSE_PARTITION_DEALLOCATE
NUSE_PARTITION_POOL_INFORMATION
NUSE_PARTITION_POOL_COUNT

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╡реЗ рд╕рднреА FALSE рдореЗрдВ рд╕реЗрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХреЙрд▓ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛрдб рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддреЗ рд╣реИрдВред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ TRUE рдкрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдбрд┐рдлрд╝реЙрд▓реНрдЯ nuse_config.h рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рдЕрдВрд╢ рд╣реИ:



рдпрджрд┐ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ API рдлрд╝рдВрдХреНрд╢рди рд╕рдХреНрд░рд┐рдп рд╣реИ, рд▓реЗрдХрд┐рди рдкреВрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рддреЛ рд╕рдВрдХрд▓рди рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ (рдХреЗрд╡рд▓ NUSE_Partition_Pool_Count () , рдЬреЛ рд╣рдореЗрд╢рд╛ рд╕рдХреНрд╖рдо рд╣реИ) рдХреЛ рдЫреЛрдбрд╝рдХрд░ред рдпрджрд┐ рдЖрдкрдХрд╛ рдХреЛрдб API рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдПрдХ рд▓реЗрдЖрдЙрдЯ рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛрдб рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЙрд▓


рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рд╛рдд рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:

рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╡рд┐рд╡рд░рдгрдирд╛рднрд┐рдХ рдЖрд░рдЯреАрдУрдПрд╕рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ
рдЕрдиреБрднрд╛рдЧ рдЪрдпрдиNU_Allocate_Partition ()NUSE_Partition_Allocate ()
рдЕрдиреБрднрд╛рдЧ рдЬрд╛рд░реАNU_Deallocate_Partition ()NUSE_Partition_Deallocate ()
рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рдирд╛
рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
NU_Partition_Pool_Information ()NUSE_Partition_Pool_Information ()
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреА рдЧрдИ рдорд╛рддреНрд░рд╛ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ) рдХрд╛ рдорд╛рди рд▓реМрдЯрд╛рдПрдВ
рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреВрд▓
NU_Established_Partition_Pools ()NUSE_Partition_Pool_Count ()
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдирдпрд╛ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдЬреЛрдбрд╝рдирд╛ (рдмрдирд╛рдирд╛)NU_Create_Partition_Pool ()рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рдПрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реЗ рдПрдХ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЛ рдмрджрд▓рдирд╛ (рд╣рдЯрд╛рдирд╛)NU_Delete_Partition_Pool ()рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдореМрдЬреВрдж рд╕рднреА рдкрд╛рд░реНрдЯреАрд╢рди рдкреВрд▓ рдореЗрдВ рд▓реМрдЯрдиреЗ рд╡рд╛рд▓реЗ рдкреЙрдЗрдВрдЯрд░реНрд╕NU_Partition_Pool_Pointers ()рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рди рддреЛ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдФрд░ рди рд╣реА рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдореЗрдВ рд░рд┐рдмреВрдЯ рдлрд╝рдВрдХреНрд╢рди рд╣реИред рдпрд╣ рдЙрджреНрджреЗрд╢реНрдп рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдмрд╣реБрдд рдмрд╛рд░, рдПрдХ рдХрд╛рд░реНрдп рдПрдХ рдЦрдВрдб рдЖрд╡рдВрдЯрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рдВрдХреЗрддрдХ рдХреЛ рджреВрд╕рд░реЗ рдХрд╛рд░реНрдп (рдЬреЛ рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рдореБрдХреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ) рдХреЛ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЛ рдкреБрдирдГ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рднреА рд╡рд┐рднрд╛рдЬрдиреЛрдВ рдХреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдЕрдзрд┐рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рддрдВрддреНрд░ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╡рд┐рднрд╛рдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рднрд╛рдЬрди рдФрд░ рд░рд┐рд▓реАрдЬрд╝ рд╕реЗрд╡рд╛рдПрдБ


рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЗ рд╕рд╛рде рдореМрд▓рд┐рдХ рд╕рдВрдЪрд╛рд▓рди рдкреВрд▓ рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдХрд╛ рдЖрд╡рдВрдЯрди рд╣реИ (рдпрд╛рдиреА рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЙрдкрдпреЛрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рдФрд░ рдЙрд╕рдХрд╛ рдкрддрд╛ рд╡рд╛рдкрд╕ рдХрд░рдирд╛) рдФрд░ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЬрд╛рд░реА рдХрд░рдирд╛ (рдпрд╛рдиреА рд╡рд┐рднрд╛рдЬрди рдЕрдкреНрд░рдпреБрдХреНрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рд╣реИ)ред рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдФрд░ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдЗрди рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рджреЛ рдмреБрдирд┐рдпрд╛рджреА рдПрдкреАрдЖрдИ рдХреЙрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рд╣реИрдВред

рдЕрдиреБрднрд╛рдЧ рдЪрдпрди


рд╡рд┐рднрд╛рдЬрди рдЖрд╡рдВрдЯрди рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдмрд╣реБрдд рд▓рдЪреАрд▓рд╛ рд╣реИ, рдЬреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рдХреЗ рд▓рд┐рдП рдпрд╛ рдмрд┐рдирд╛ рд╕рдордп-рд╕реАрдорд╛ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдпрджрд┐ рдСрдкрд░реЗрд╢рди рддреБрд░рдВрдд рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдЖрдк рдПрдХ рдкреВрд▓ рд╕реЗ рдПрдХ рд╡рд┐рднрд╛рдЬрди рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рд╡рд┐рднрд╛рдЬрди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рддрд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдПрдХ рд╣реА рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рд░реБрдХреЗ рд╣реБрдП рдХрд╛рд░реНрдп рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдПрдХ рдЯрд╛рдЗрдордЖрдЙрдЯ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдЯреВ рдкрд╛рд░реНрдЯрд┐рд╢рди


рдХреЙрд▓ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк:

рд╕реНрдерд┐рддрд┐ NU_Allocate_Partition (NU_PARTITION_POOL * рдкреВрд▓, VOID ** return_pointer, UNSIGNED рд╕рд╕реНрдкреЗрдВрдб);

рд╡рд╛рдкрд╕реА рдореВрд▓реНрдп:

NU_SUCCESS - рдХреЙрд▓ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рдерд╛;
NU_NO_PARTITION - рдХреЛрдИ рдЕрдиреБрднрд╛рдЧ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ;
NU_INVALID_POOL - рдЕрдорд╛рдиреНрдп рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рд╕реВрдЪрдХ;
NU_INVALID_POINTER - рд▓реМрдЯрд╛рдП рдЧрдП рдбреЗрдЯрд╛ ( NULL ) рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╢рдХреНрдд рд╕реВрдЪрдХ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛;
NU_INVALID_SUSPEND - рдХрд┐рд╕реА рдХрд╛рд░реНрдп рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдЙрд╕ рдХрд╛рд░реНрдп рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдерд╛ рдЬрд┐рд╕реЗ рдХрд╛рд░реНрдп рд╕реЗ рд╕рдВрдмрджреНрдз рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛;
NU_TIMEOUT - рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рддреАрдХреНрд╖рд╛ рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдирд┐рд▓рдВрдмрди рдХреЗ рдмрд╛рдж рднреА рдХреЛрдИ рд╡рд┐рднрд╛рдЬрди рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ;
NU_POOL_DELETED - рдХрд╛рд░реНрдп рд╕реНрдердЧрд┐рдд рд╣реЛрдиреЗ рдкрд░ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдПрдХ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдПрдкреАрдЖрдИ рдХреЙрд▓


рдпрд╣ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдПрдкреАрдЖрдИ рдХреА рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рдХреЙрд▓ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк:

рд╕реНрдерд┐рддрд┐ NUSE_Partition_Allocate (NUSE_PARTITION_POOL рдкреВрд▓, ADDR * return_pointer, U8 рд╕рд╕реНрдкреЗрдВрдб);

рд╡рд┐рдХрд▓реНрдк:

рдкреВрд▓ - рдкреНрд░рдпреБрдХреНрдд рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ (рдЖрдИрдбреА);
return_pointer - ADDR рдХреЗ рдПрдХ рдЪрд░ рдХреЗ рд▓рд┐рдП рд╕реВрдЪрдХ, рдЬреЛ рдЪрдпрдирд┐рдд рдЕрдиреБрднрд╛рдЧ рдХрд╛ рдкрддрд╛ рд▓реЗрддрд╛ рд╣реИ;
рдирд┐рд▓рдВрдмрди - рдХрд╛рд░реНрдп рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░; рдпрд╣ рдорд╛рдиреЛрдВ рдХреЛ рд▓реЗ рд╕рдХрддрд╛ рд╣реИ NUSE_NO_SUSPEND рдпрд╛ NUSE_SUSPEND ред

рд╡рд╛рдкрд╕реА рдореВрд▓реНрдп:

NUSE_SUCCESS - рдХреЙрд▓ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рдерд╛;
NUSE_NO_PARTITION - рдХреЛрдИ рдЕрдиреБрднрд╛рдЧ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ;
NUSE_INVALID_POOL - рдЕрдорд╛рдиреНрдп рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рд╕реВрдЪрдХрд╛рдВрдХ;
NUSE_INVALID_POINTER - рд▓реМрдЯрд╛рдП рдЧрдП рдбреЗрдЯрд╛ ( NULL ) рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╢рдХреНрдд рд╕реВрдЪрдХ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛;
NUSE_INVALID_SUSPEND- рдХрд┐рд╕реА рдХрд╛рд░реНрдп рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдЙрд╕ рдереНрд░реЗрдб рд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдХрд╛рд░реНрдп рд╕реЗ рд╕рдВрдмрджреНрдз рдирд╣реАрдВ рдерд╛ рдпрд╛ рдЬрдм рд▓реЙрдХрд┐рдВрдЧ API рдЕрдХреНрд╖рдо рдереЗред

рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдЖрд╡рдВрдЯрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди


API рдлрд╝рдВрдХреНрд╢рди рдХреЛрдб NUSE_Partition_Allocate рдХреЛ рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдмреНрд▓реЙрдХ (рдХрд╛рд░реНрдп рдирд┐рд▓рдВрдмрд┐рдд) рд╕рдХреНрд░рд┐рдп рд╣реИ рдпрд╛ рдирд╣реАрдВред рдиреАрдЪреЗ рд╣рдо рдЗрди рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдЕрд▓рдЧ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред

рдпрджрд┐ рдЕрд╡рд░реБрджреНрдз рдХреЙрд▓ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реИрдВ, рддреЛ API рдХреЙрд▓ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ:



рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореБрдлреНрдд рд╡рд┐рднрд╛рдЬрди рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рднрд╛рдЬрди рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рд▓реМрдЯрд╛ рджреА рдЬрд╛рддреА рд╣реИ ( NUSE_NO_PARTITION )ред рдлрд┐рд░ рд╡рд░реНрдЧреЛрдВ рдХреА рдПрдХ рдЧрдгрдирд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рджреМрд░рд╛рди рдкрд╣рд▓реЗ рдмрд╛рдЗрдЯреНрд╕ рдХреЛ рд╢реВрдиреНрдп рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрднрд╛рдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдЬрдм рдРрд╕рд╛ рд╡рд┐рднрд╛рдЬрди рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ "рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛" рдзреНрд╡рдЬ рд╕реМрдВрдкрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИ (рдиреАрдЪреЗ "рд╡рд┐рднрд╛рдЬрди рдЬрд╛рд░реА рдХрд░реЗрдВ" рджреЗрдЦреЗрдВ), рдФрд░ рдЕрдЧрд▓реЗ рдмрд╛рдЗрдЯ (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛ рдХреНрд╖реЗрддреНрд░ рдХреА рд╢реБрд░реБрдЖрдд) рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреЗрддрдХ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рд╡рд┐рднрд╛рдЬрди рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдпрджрд┐ рд▓реЙрдХ рд╕рдХреНрд░рд┐рдп рд╣реИ, рддреЛ рдЗрд╕ API рдХреЙрд▓ рдХрд╛ рдХреЛрдб рдереЛрдбрд╝рд╛ рдФрд░ рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ:



рдХреЛрдб рдПрдХ рдбреВ ... рд▓реВрдк рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реИ, рдЬреЛ рддрдм рддрдХ рдЪрд▓рддрд╛ рд░рд╣рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдард╣рд░рд╛рд╡ рдкреИрд░рд╛рдореАрдЯрд░ NUSE_SUSPEND рд╣реИ ред

рдпрджрд┐ рдХреЛрдИ рд╡рд┐рднрд╛рдЬрди рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ рдФрд░ рдард╣рд░рд╛рд╡ рдкреИрд░рд╛рдореАрдЯрд░ NUSE_NO_SUSPEND рд╣реИ , рддреЛ API рдХреЙрд▓ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ NUSE_NO_PARTITION рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдард╣рд░рд╛рд╡ рдкреИрд░рд╛рдореАрдЯрд░ NUSE_SUSPEND рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдХрд╛рд░реНрдп рд░реБрдХ рдЬрд╛рддрд╛ рд╣реИред рд▓реМрдЯрддреЗ рд╕рдордп (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдХреЛрдИ рдХрд╛рд░реНрдп рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ), NUSE_SUCCESS рдХрд╛ рд░рд┐рдЯрд░реНрди рдорд╛рди рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХрд╛рд░реНрдп рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдореЗрдореЛрд░реА рд╕реЗрдХреНрд╢рди рдХреЛ рдореБрдХреНрдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдХреЛрдб рд▓реВрдк рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдПрдкреАрдЖрдИ рдлрд╝рдВрдХреНрд╢рди рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрдиреНрдп рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рдиреЗ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рд▓рд┐рдП, NUSE_Task_Blocking_Rurnurn [] рд╕рддреНрдпрд╛рдкрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдВрд░рдХреНрд╖рд┐рдд рд╣реИред

рдЕрдиреБрднрд╛рдЧ рдЬрд╛рд░реА


рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдФрд░ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдореЗрдВ рд╕реЗрдХреНрд╢рди рдХреА рд░рд┐рд▓реАрдЬ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рддреА рд╣реИред рд░рд┐рд▓реАрдЬ рд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рдХрд╛рд░реНрдп рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдХрд┐рд╕реА рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЦрд╛рд▓реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рдбреЗрдЯрд╛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЙрдЗрдВрдЯрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдЯреВ рдлреНрд░реА рдкрд╛рд░реНрдЯрд┐рд╢рди


рдХреЙрд▓ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк:

рд╕реНрдерд┐рддрд┐ NU_Deallocate_Partition (VOID * рд╡рд┐рднрд╛рдЬрди);

рд╡рд┐рдХрд▓реНрдк:

рд╡рд┐рднрд╛рдЬрди - рдбреЗрдЯрд╛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЙрдЗрдВрдЯрд░ ( рд╡рд┐рднрд╛рдЬрди рдХреЗ NU_Allocate_Partition () рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ);

рд╡рд╛рдкрд╕реА рдореВрд▓реНрдп:

NU_SUCCESS - рдХреЙрд▓ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рдерд╛;
NU_INVALID_POINTER - рдкреВрд░реНрдг рдЕрдиреБрднрд╛рдЧ рд╕реВрдЪрдХ, рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдорд╛рдиреНрдп рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдПрд╕рдИ рдПрдкреАрдЖрдИ рдореБрдлреНрдд рд╡рд┐рднрд╛рдЬрди рдХреЛ рдмреБрд▓рд╛рддрд╛ рд╣реИ


рдпрд╣ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдиреНрдпреВрдХреНрд▓рд┐рдпрд╕ рдЖрд░рдЯреАрдУрдПрд╕ рдПрдкреАрдЖрдИ рдХреА рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рдХреЙрд▓ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк:

рд╕реНрдерд┐рддрд┐ NUSE_Partition_Deallocate (ADDR рд╡рд┐рднрд╛рдЬрди);

рд╡рд┐рдХрд▓реНрдк:

рд╡рд┐рднрд╛рдЬрди - рдбреЗрдЯрд╛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреЗрддрдХ ( рд╡рд┐рднрд╛рдЬрди рдХреЗ NUSE_Partition_Allocate () рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдпрд╛)

рд╡рд╛рдкрд╕реА рдореВрд▓реНрдп:

NUSE_SUCCESS - рдХреЙрд▓ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рдерд╛;
NUSE_INVALID_POINTER - рд╕реЗрдХреНрд╢рди рдкреЙрдЗрдВрдЯрд░ null ( NULL ) рд╣реИ, рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдПрдХ рдорд╛рдиреНрдп рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди


рдЕрд╡рд░реБрджреНрдз рдФрд░ рдЧреИрд░-рдЕрд╡рд░реБрджреНрдз рдПрдкреАрдЖрдИ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, NUSE_Partition_Deallocate () рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдмрд╕ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдЕрдиреБрднрд╛рдЧ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрдирд▓реЙрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдпрд╣ рдХреЛрдб рдЕрдиреБрднрд╛рдЧреЛрдВ рдХреЛ рдореБрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ:



рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЦрдВрдб рд╕реВрдЪрдХрд╛рдВрдХ рд╕реНрдерд┐рддрд┐ рдмрд╛рдЗрдЯ рд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░, рд╡рд┐рднрд╛рдЬрди рдХреА рд╕реНрдерд┐рддрд┐ "рдЕрдкреНрд░рдпреБрдХреНрдд" рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИ, рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд┐рднрд╛рдЬрди рдХрд╛ рдХрд╛рдЙрдВрдЯрд░ рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдСрдкрд░реЗрд╢рди рдХреЗ рд╕рдлрд▓ рд╕рдорд╛рдкрди рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ рд▓реЙрдХ рд╕рдХреНрд░рд┐рдп рд╣реИ, рддреЛ рдирд┐рдореНрди рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдкрд▓рдмреНрдз рд╡рд┐рднрд╛рдЬрди рдкреВрд▓ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:



рдпрджрд┐ рдЗрд╕ рдкреВрд▓ рдореЗрдВ рд╡рд┐рднрд╛рдЬрди рдЖрд╡рдВрдЯрд┐рдд рдХрд░рддреЗ рд╕рдордп рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдкрд╣рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИред

рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдореЗрдореЛрд░реА рд╡рд┐рднрд╛рдЬрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЕрддрд┐рд░рд┐рдХреНрдд рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

рд▓реЗрдЦрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рдХреЙрд▓рд┐рди рд╡рд╛рд▓реНрд╕ рддреАрд╕ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХреНрд╕ рдЙрджреНрдпреЛрдЧ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЕрдкрдиреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдХреЛ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╡рд╣ рдЕрдм рдореЗрдВрдЯрд░ рдПрдВрдмреЗрдбреЗрдб (рдореЗрдВрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХрд╛ рдПрдХ рдкреНрд░рднрд╛рдЧ) рдореЗрдВ рдПрдХ рдлрд░реНрдорд╡реЗрдпрд░ рдЗрдВрдЬреАрдирд┐рдпрд░ рд╣реИред рдХреЙрд▓рд┐рди рд╡рд╛рд▓реНрд╕ рдЕрдХреНрд╕рд░ рд╕рдореНрдореЗрд▓рдиреЛрдВ рдФрд░ рд╕реЗрдорд┐рдирд╛рд░реЛрдВ рдореЗрдВ рдмреЛрд▓рддреЗ рд╣реИрдВ, рдХрдИ рддрдХрдиреАрдХреА рд▓реЗрдЦреЛрдВ рдХреЗ рд▓реЗрдЦрдХ рдФрд░ рдлрд░реНрдорд╡реЗрдпрд░ рдкрд░ рджреЛ рдХрд┐рддрд╛рдмреЗрдВред рдмреНрд░рд┐рдЯреЗрди рдореЗрдВ рд░рд╣рддрд╛ рд╣реИред

Source: https://habr.com/ru/post/hi426425/


All Articles