bdflush(2) - wariua/manpages-ko GitHub Wiki

NAME

bdflush - 버퍼 λ³€κ²½ 기둝 데λͺ¬μ„ μ‹œμž‘ν•˜κ³ , κΈ°λ‘μ‹œν‚€κ³ , μ‘°μ •ν•˜κΈ°

SYNOPSIS

#include <sys/kdaemon.h>

int bdflush(int func, long *address);
int bdflush(int func, long data);

DESCRIPTION

주의: 이 μ‹œμŠ€ν…œ ν˜ΈμΆœμ€ λ¦¬λˆ…μŠ€ 2.6λΆ€ν„° 제거 μ˜ˆμ •μœΌλ‘œ ν‘œμ‹œλ˜μ—ˆμœΌλ©° 아무것도 ν•˜μ§€ μ•ŠλŠ”λ‹€. ν–₯ν›„ 컀널 λ¦΄λ¦¬μŠ€μ—μ„œ μ™„μ „νžˆ μ‚¬λΌμ§ˆ 것 κ°™λ‹€. bdflush()κ°€ μˆ˜ν–‰ν•˜λ˜ μž‘μ—…μ„ μš”μ¦˜μ€ 컀널 μŠ€λ ˆλ“œ pdflushκ°€ λ§‘κ³  μžˆλ‹€.

bdflush()λŠ” 버퍼 λ³€κ²½ 기둝(buffer-dirty-flush) 데λͺ¬μ„ μ‹œμž‘ν•˜κ³ , κΈ°λ‘μ‹œν‚€κ³ , μ‘°μ •ν•œλ‹€. 특ꢌ이 μžˆλŠ” (CAP_SYS_ADMIN μ—­λŠ₯이 μžˆλŠ”) ν”„λ‘œμ„ΈμŠ€λ§Œ bdflush()λ₯Ό ν˜ΈμΆœν•  수 μžˆλ‹€.

funcκ°€ μŒμˆ˜μ΄κ±°λ‚˜ 0이고 데λͺ¬μ„ 아직 μ‹œμž‘ν•˜μ§€ μ•Šμ•˜μœΌλ©΄ bdflush()κ°€ 데λͺ¬ μ½”λ“œλ‘œ μ§„μž…ν•˜κ³  μ ˆλŒ€ λ°˜ν™˜ν•˜μ§€ μ•ŠλŠ”λ‹€.

funcκ°€ 1이면 λ³€κ²½λœ 버퍼듀 일뢀λ₯Ό λ””μŠ€ν¬λ‘œ κΈ°λ‘ν•œλ‹€.

funcκ°€ 2 이상이고 짝수(ν•˜μœ„ λΉ„νŠΈκ°€ 0)이면 addressκ°€ long μ›Œλ“œμ˜ μ£Όμ†Œμ΄κ³  κ·Έ μ£Όμ†Œλ₯Ό 톡해 (func-2)/2번 νŠœλ‹ λ§€κ°œλ³€μˆ˜λ₯Ό ν˜ΈμΆœμžμ—κ²Œ λ°˜ν™˜ν•œλ‹€.

funcκ°€ 3 이상이고 ν™€μˆ˜(ν•˜μœ„ λΉ„νŠΈκ°€ 1)이면 dataκ°€ long μ›Œλ“œμ΄κ³  κ·Έ 값을 (func-3)/2번 νŠœλ‹ λ§€κ°œλ³€μˆ˜μ— μ„€μ •ν•œλ‹€.

λ§€κ°œλ³€μˆ˜λ“€κ³Ό κ·Έ κ°’λ“€, 유효 λ²”μœ„κ°€ λ¦¬λˆ…μŠ€ 컀널 μ†ŒμŠ€ 파일 fs/buffer.c에 μ •μ˜λΌ μžˆλ‹€.

RETURN VALUE

funcκ°€ μŒμˆ˜μ΄κ±°λ‚˜ 0이고 데λͺ¬μ΄ μ„±κ³΅μ μœΌλ‘œ μ‹œμž‘ν•˜λŠ” 경우 bdflush()κ°€ μ ˆλŒ€ λ°˜ν™˜ν•˜μ§€ μ•ŠλŠ”λ‹€. κ·Έ μ™Έ κ²½μš°μ—, 성곡 μ‹œμ—λŠ” λ°˜ν™˜ 값이 0이며 였λ₯˜ μ‹œμ—λŠ” -1이고 였λ₯˜λ₯Ό λ‚˜νƒ€λ‚΄λ„λ‘ errnoλ₯Ό μ„€μ •ν•œλ‹€.

ERRORS

EBUSY
λ‹€λ₯Έ ν”„λ‘œμ„ΈμŠ€μ—μ„œ 이미 μ§„μž…ν•œ 후에 데λͺ¬ μ½”λ“œμ— μ§„μž…ν•˜λ €κ³  μ‹œλ„ν•˜μ˜€λ‹€.
EFAULT
addressκ°€ μ ‘κ·Ό κ°€λŠ₯ν•œ μ£Όμ†Œ 곡간 밖을 가리킨닀.
EINVAL
μœ νš¨ν•˜μ§€ μ•Šμ€ λ§€κ°œλ³€μˆ˜ λ²ˆν˜Έμ— μ½κ±°λ‚˜ μ“°λ €κ³  μ‹œλ„ν–ˆκ±°λ‚˜, λ§€κ°œλ³€μˆ˜μ— μœ νš¨ν•˜μ§€ μ•Šμ€ 값을 μ“°λ €κ³  μ‹œλ„ν–ˆλ‹€.
EPERM
ν˜ΈμΆœμžμ—κ²Œ CAP_SYS_ADMIN μ—­λŠ₯이 μ—†λ‹€.

VERSIONS

glibc 버전 2.23λΆ€ν„° 이 ꡬ식 μ‹œμŠ€ν…œ ν˜ΈμΆœμ„ 더 이상 μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€.

CONFORMING TO

bdflush()λŠ” λ¦¬λˆ…μŠ€ μ „μš©μ΄λ―€λ‘œ 이식성이 μžˆμ–΄μ•Ό ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ—μ„œλŠ” μ‚¬μš©ν•˜μ§€ 말아야 ν•œλ‹€.

SEE ALSO

sync(1), fsync(2), sync(2)


2016-10-08

⚠️ **GitHub.com Fallback** ⚠️