Linux man-pages:   主頁   ||   git | readme | 貢獻 | 約定   |   郵件列表 | 存檔   |   釋出 | 書籍 | 線上頁面

Linux man-pages 中缺失的手冊頁

以下是可能應該新增到 man-pages 集合中的頁面列表。如果您正在考慮編寫其中一個或多個頁面,那麼

系統呼叫

系統呼叫
核心
註釋
endian_switch(2) 2.6.26 POWER 6 特定
sys_debug_setcontext(2) 2.6.11 如果啟用了 CONFIG_POWERPC 核心配置選項,則為 PowerPC

/sys 檔案系統

沒有針對 /sys 檔案系統的手冊頁:可能應該有一個類似於 proc(5)sys(5) 頁面。核心原始檔 Documentation/filesystems/sysfs.txt 為此頁面提供了一個起點;另請參閱 Documentation/ 目錄下的許多其他 *sysfs*.txt 檔案。

GNU C 庫命令

GNU C 庫提供了一些命令(可執行檔案、指令碼),例如 ldd(1)time(1)。這些命令在 man-pages 的第 1 節和第 8 節中進行了記錄。至少缺少以下頁面

命令 自 glibc
版本
註釋
gencat(1)    
getconf(1)    
makedb(1)    
rpcgen(1)    
utmpdump(1)    

庫函式

下面列出了未記錄的 (GNU) C 庫函式。像以下這樣的搜尋可能會建議其他需要記錄的函式



MPDIR=~/man-pages       # Directory containing uncompressed man-pages
GLIBCDIR=/SOME_DIR      # Directory containing glibc tree

for f in  $(cat $(find $GLIBCDIR -name Versions |
                egrep -v '/(hurd|mach)/') |
        egrep -v '({|}|^%)' |
        sed -e 's/#.*//' |
        tr ';' '\012' |
        sed 's/^  *//' |
        grep -v '^[_.]' |
        sort -u); do
    if ! test -f "$MPDIR/man3/$f.3" > /dev/null 2>&1 &&
                ! test -f "$MPDIR/man2/$f.2" > /dev/null 2>&1 ; then
        echo $f;
    fi
done

或者,可以檢視特定庫匯出的文字符號(除非庫符號已被剝離),以檢視是否有相應的手冊頁。這裡,使用 libm 的示例


nm -D /lib/libm.so.6 | sed -re '/^[0-9a-f]* T /!d; s///; /^_/d' |
	xargs whatis | sed -ne 's/: nothing appropriate\.$//p' | sort -u

在許多情況下,下面列出的介面是使用此類指令碼找到的,並且尚未檢查這些介面是否是可能最好不記錄的過時介面。

函式 自 glibc
版本
註釋
mallwatch(3)
tr_break(3) (?)
  想法是在偵錯程式中,我們將 'mallwatch' 設定為 malloc 函式返回的地址,在 tr_break() (在 glibc 中定義)上設定斷點,然後繼續執行。當 malloc 操作觸及 'mallwatch' 引用的地址時,將執行斷點。必須使用 mtrace() 來安裝必要的 malloc 掛鉤。
quick_exit(3) at_quick_exit(3) 2.10 請參閱 https://udrepper.livejournal.com/20948.html 和 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2440.htm。在 C11 中標準化。
res_ninit(3)
res_nmkquery(3)
res_nquery(3)
res_nquerydomain(3)
res_nsearch(3)
res_nsend(3)
res_nclose(3) res_gethostbyaddr(3)
res_gethostbyname(3)
res_gethostbyname2(3)
res_send_setqhook(3)
res_send_setrhook(3)
2.8 也許應該在 resolver(3) 頁面上記錄。
iswalnum_l(3)
iswalpha_l(3)
iswblank_l(3)
iswcntrl_l(3)
iswctype_l(3)
iswdigit_l(3)
iswgraph_l(3)
iswlower_l(3)
iswprint_l(3)
iswpunct_l(3)
iswspace_l(3)
iswupper_l(3)
iswxdigit_l(3)
isxdigit_l(3)
strcasecmp_l(3)
strcoll_l(3)
strfmon_l(3)
strftime_l(3)
strncasecmp_l(3)
strptime_l(3)
strtod_l(3)
strtof_l(3)
strtol_l(3)
strtold_l(3)
strtoll_l(3)
strtoul_l(3)
strtoull_l(3)
strxfrm_l(3)
toascii_l(3)
towctrans_l(3)
wcscasecmp_l(3)
wcscoll_l(3)
wcsftime_l(3)
wcsncasecmp_l(3)
wcstod_l(3)
wcstof_l(3)
wcstol_l(3)
wcstold_l(3)
wcstoll_l(3)
wcstoul_l(3)
wcstoull_l(3)
wcsxfrm_l(3)
wctrans_l(3)
wctype_l(3)
  區域設定函式 -- 請參閱 POSIX.1-2008 規範

在大多數情況下,這些函式可以整合到相應傳統函式的現有手冊頁中。有關需要完成的操作示例,請參閱 isalpha(3)toupper(3)towlower(3)towupper(3) 手冊頁(特別是,請參閱 man-pages-3.63 中所做的更改)。

toascii_l(3) 是非標準的,並且具有不同的 FTM 要求。其他一些函式可能也是如此。
endsgent(3)
fgetsgent(3)
fgetsgent_r(3)
getsgent(3)
getsgent_r(3)
getsgnam(3)
getsgnam_r(3)
putsgent(3)
setsgent(3)
sgetsgent(3)
sgetsgent_r(3)
2.10 影子組檔案函式,類似於影子密碼檔案函式
advance(3)
step(3)
loc1(3)loc2(3)locs(3)
re_compile_fastmap(3)
re_compile_pattern(3)
re_match(3)
re_match_2(3)
re_max_failures(3)
re_search(3)
re_search_2(3)
re_set_registers(3)
re_set_syntax(3)
re_syntax_options(3)
   
gamma_r(3)
gammaf_r(3)
gammal_r(3)
   
inet_neta(3)
inet_nsap_addr(3)
inet_nsap_ntoa(3)
   
parse_printf_format(3)
register_printf_function(3)
register_printf_modifier(3)
register_printf_specifier(3)
register_printf_type(3)
2.0 有 info 頁面,並且 <printf.h> 包含有用的資訊。
printf_size() printf_size_info() 2.1 有 info 頁面,並且 <printf.h> 包含有用的資訊。
clntunix_create(3)
getnetname(3)
netname(3)
getpublickey(3)
getsecretkey(3)
key_decryptsession_pk(3)
key_encryptsession_pk(3)
key_get_conv(3)
key_setnet(3)
rpc_createerr(3)
rpc_createerr(3)
svc_exit(3)
svc_fdset(3)
svc_getreq_common(3)
svc_getreq_poll(3)
svc_max_pollfd(3)
svc_pollfd(3)
svcauthdes_stats(3)
svcudp_enablecache(3)
svcunix_create(3)
svcunixfd_create(3)
   
authdes_create(3)
authdes_getucred(3)
authdes_pk_create(3)
   
getipv4sourcefilter(3)
getsourcefilter(3)
setipv4sourcefilter(3)
setsourcefilter(3)
   
idna_to_ascii_lz(3)
idna_to_unicode_lzlz(3)
  在版本檔案中是否未列出其他各種“idna”函式?
moncontrol(3)
monstartup(3)
profil_counter(3)
sprofil(3)
   
glob_pattern_p(3)   需要 _GNU_SOURCE
rexecoptions(3)
ruserpass(3)
  不在 glibc 2.12 標頭中?
h_errlist(3)
h_nerr(3)
  不在 glibc 2.12 標頭中?可能已棄用。
host2netname(3)
netname2host(3)
netname2user(3)
user2netname(3)
   
isctype(3)   需要 _GNU_SOURCE
ns_datetosecs(3)
ns_format_ttl(3)
ns_get16(3)
ns_get32(3)
ns_initparse(3)
ns_makecanon(3)
ns_msg_getflag(3)
ns_name_compress(3)
ns_name_ntol(3)
ns_name_ntop(3)
ns_name_pack(3)
ns_name_pton(3)
ns_name_rollback(3)
ns_name_skip(3)
ns_name_uncompress(3)
ns_name_unpack(3)
ns_parse_ttl(3)
ns_parserr(3)
ns_put16(3)
ns_put32(3)
ns_samedomain(3)
ns_samename(3)
ns_skiprr(3)
ns_sprintrr(3)
ns_sprintrrf(3)
ns_subdomain(3)
   
c16rtomb(3)
c32rtomb(3)
mbrtoc16(3)
mbrtoc32(3)
2.16  
timespec_get(3) 2.16 新的 C11 函式,需要 _ISOC11_SOURCE
timespec_getres(3) 2.34 新的 C2X 函式,需要 _ISOC2X_SOURCE
obstack_alloc_failed_handler(3)
obstack_exit_failure(3)
obstack_free(3)
obstack_printf(3)
obstack_vprintf(3)
open_obstack_stream(3)
   
inet6_opt_append(3)
inet6_opt_find(3)
inet6_opt_finish(3)
inet6_opt_get_val(3)
inet6_opt_init(3)
inet6_opt_next(3)
inet6_opt_set_val(3)
inet6_option_alloc(3)
inet6_option_append(3)
inet6_option_find(3)
inet6_option_init(3)
inet6_option_next(3)
inet6_option_space(3)
inet6_rth_add(3)
inet6_rth_getaddr(3)
inet6_rth_init(3)
inet6_rth_reverse(3)
inet6_rth_segments(3)
inet6_rth_space(3)
   
nis_add(3)
nis_add_entry(3)
nis_addmember(3)
nis_checkpoint(3)
nis_clone_directory(3)
nis_clone_object(3)
nis_clone_result(3)
nis_creategroup(3)
nis_destroy_object(3)
nis_destroygroup(3)
nis_dir_cmp(3)
nis_domain_of(3)
nis_domain_of_r(3)
nis_first_entry(3)
nis_free_directory(3)
nis_free_object(3)
nis_free_request(3)
nis_freenames(3)
nis_freeresult(3)
nis_freeservlist(3)
nis_freetags(3)
nis_getnames(3)
nis_getservlist(3)
nis_ismember(3)
nis_leaf_of(3)
nis_leaf_of_r(3)
nis_lerror(3)
nis_list(3)
nis_local_directory(3)
nis_local_group(3)
nis_local_host(3)
nis_local_principal(3)
nis_lookup(3)
nis_mkdir(3)
nis_modify(3)
nis_modify_entry(3)
nis_name_of(3)
nis_name_of_r(3)
nis_next_entry(3)
nis_perror(3)
nis_ping(3)
nis_print_directory(3)
nis_print_entry(3)
nis_print_group(3)
nis_print_group_entry(3)
nis_print_link(3)
nis_print_object(3)
nis_print_result(3)
nis_print_rights(3)
nis_print_table(3)
nis_read_obj(3)
nis_remove(3)
nis_remove_entry(3)
nis_removemember(3)
nis_rmdir(3)
nis_servstate(3)
nis_sperrno(3)
nis_sperror(3)
nis_sperror_r(3)
nis_stats(3)
nis_verifygroup(3)
nis_write_obj(3)
   
yp_all(3)
yp_bind(3)
yp_first(3)
yp_get_default_domain(3)
yp_maplist(3)
yp_master(3)
yp_match(3)
yp_next(3)
yp_order(3)
yp_unbind(3)
yp_update(3)
ypbinderr_string(3)
yperr_string(3)
ypprot_err(3)
   
xdr_authdes_cred(3)
xdr_authdes_verf(3)
xdr_cback_data(3)
xdr_cryptkeyarg(3)
xdr_cryptkeyarg2(3)
xdr_cryptkeyres(3)
xdr_des_block(3)
xdr_domainname(3)
xdr_getcredres(3)
xdr_hyper(3)
xdr_int16_t(3)
xdr_int32_t(3)
xdr_int64_t(3)
xdr_int8_t(3)
xdr_key_netstarg(3)
xdr_key_netstres(3)
xdr_keybuf(3)
xdr_keydat(3)
xdr_keystatus(3)
xdr_longlong_t(3)
xdr_mapname(3)
xdr_netnamestr(3)
xdr_netobj(3)
xdr_obj_p(3)
xdr_peername(3)
xdr_quad_t(3)
xdr_rmtcall_args(3)
xdr_rmtcallres(3)
xdr_sizeof(3)
xdr_u_hyper(3)
xdr_u_longlong_t(3)
xdr_u_quad_t(3)
xdr_uint16_t(3)
xdr_uint32_t(3)
xdr_uint64_t(3)
xdr_uint8_t(3)
xdr_unixcred(3)
xdr_valdat(3)
xdr_yp_buf(3)
xdr_ypall(3)
xdr_ypbind_binding(3)
xdr_ypbind_resp(3)
xdr_ypbind_resptype(3)
xdr_ypbind_setdom(3)
xdr_ypdelete_args(3)
xdr_ypmap_parms(3)
xdr_ypmaplist(3)
xdr_yppush_status(3)
xdr_yppushresp_xfr(3)
xdr_ypreq_key(3)
xdr_ypreq_nokey(3)
xdr_ypreq_xfr(3)
xdr_ypresp_all(3)
xdr_ypresp_key_val(3)
xdr_ypresp_maplist(3)
xdr_ypresp_master(3)
xdr_ypresp_order(3)
xdr_ypresp_val(3)
xdr_ypresp_xfr(3)
xdr_ypstat(3)
xdr_ypupdate_args(3)
xdr_ypxfrstat(3)
   
td_init(3)
td_log(3)
td_symbol_list(3)
td_ta_clear_event(3)
td_ta_delete(3)
td_ta_enable_stats(3)
td_ta_event_addr(3)
td_ta_event_getmsg(3)
td_ta_get_nthreads(3)
td_ta_get_ph(3)
td_ta_get_stats(3)
td_ta_map_id2thr(3)
td_ta_map_lwp2thr(3)
td_ta_new(3)
td_ta_reset_stats(3)
td_ta_set_event(3)
td_ta_setconcurrency(3)
td_ta_thr_iter(3)
td_ta_tsd_iter(3)
td_thr_clear_event(3)
td_thr_dbresume(3)
td_thr_dbsuspend(3)
td_thr_event_enable(3)
td_thr_event_getmsg(3)
td_thr_get_info(3)
td_thr_getfpregs(3)
td_thr_getgregs(3)
td_thr_getxregs(3)
td_thr_getxregsize(3)
td_thr_set_event(3)
td_thr_setfpregs(3)
td_thr_setgregs(3)
td_thr_setprio(3)
td_thr_setsigpending(3)
td_thr_setxregs(3)
td_thr_sigsetmask(3)
td_thr_tls_get_addr(3)
td_thr_tlsbase(3)
td_thr_tsd(3)
td_thr_validate(3)
  libthread
ntp_gettimex(3) 2.12  
argp_error(3)
argp_err_exit_status(3) (變數)
argp_failure(3)
argp_help(3)
argp_parse(3)
argp_program_bug_address(3)
argp_program_version(3)
argp_program_version_hook(3)
argp_state_help(3)
argp_usage(3)
  這裡有一些資訊頁面。
posix_spawnattr_destroy(3)
posix_spawnattr_getflags(3)
posix_spawnattr_getpgroup(3)
posix_spawnattr_getschedparam(3)
posix_spawnattr_getschedpolicy(3)
posix_spawnattr_getsigdefault(3)
posix_spawnattr_getsigmask(3)
posix_spawnattr_init(3)
posix_spawnattr_setflags(3)
posix_spawnattr_setpgroup(3)
posix_spawnattr_setschedparam(3)
posix_spawnattr_setschedpolicy(3)
posix_spawnattr_setsigdefault(3)
posix_spawnattr_setsigmask(3)
posix_spawn_file_actions_addclose(3)
posix_spawn_file_actions_adddup2(3)
posix_spawn_file_actions_addopen(3)
posix_spawn_file_actions_destroy(3)
posix_spawn_file_actions_init(3)
   
posix_spawn_file_actions_addchdir_np(3)
posix_spawn_file_actions_addfchdir_np(3)
  glibc 2.29 中的新增功能。
C11 執行緒函式
thrd_detach()
thrd_exit()
thrd_join()
mtx_init()
mtx_lock()
mtx_timedlock()
mtx_trylock()
mtx_unlock()
mtx_destroy()
call_once()
cnd_broadcast()
cnd_destroy()
cnd_init()
cnd_signal()
cnd_timedwait()
cnd_wait()
tss_create()
tss_delete()
tss_get()
tss_set()
  glibc 2.28 中的新增功能。
各種寬字元函式
(括號中提及它們的傳統等效項)
wscanf(3) (scanf(3))
fwscanf(3) (fscanf(3))
swscanf(3) (sscanf(3))
vfwscanf(3) (vfscanf(3))
vswscanf(3) (vsscanf(3))
wcschrnul(3) (strchrnul(3))
wcscoll(3) (strcoll(3))
wcsftime(3) (strftime(3))
wcstod(3) (strtod(3))
wcstof(3) (strtof(3))
wcstold(3) (strtold(3))
wcstol(3) (atol(3))
wcstol(3) (strtol(3))
wcstoul(3) (strtoul(3))
wcstoll(3) (strtoll(3))
wcstoull(3) (strtoull(3))
wcstoq(3) (atoq(3))
wcstoq(3) (strtoq(3))
wcstouq(3) (strtouq(3))
wcswcs(3) (strstr(3))
wcsxfrm(3) (strxfrm(3))
  在這些手冊頁編寫完成後,將傳統函式的手冊頁中的“另請參閱”條目新增到描述其寬字元等效項的手冊頁中。
wmemrtombs(3)    
swscanf(3)
vfwscanf(3)
vswscanf(3)
vwscanf(3)
wscanf(3)
   
fesetexcept()
fetestexceptflag()
fegetmode()
fesetmode()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm 函式
roundeven()
roundevenf()
roundevenl()
fromfp()
fromfpf()
fromfpl()
ufromfp()
ufromfpf()
ufromfpl()
fromfpx()
fromfpxf()
fromfpxl()
ufromfpx()
ufromfpxf()
ufromfpxl()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm(最接近整數)函式
llogb()
llogbf()
llogbl()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm 函式
fmaxmag()
fmaxmagf()
fmaxmagl()
fminmag()
fminmagf()
fminmagl()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm(最大-最小幅度)函式
iseqsig() 2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm 比較宏
iscanonical()
issubnormal()
iszero()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm 分類宏
totalorder()
totalorderf()
totalorderl()
totalordermag()
totalordermagf()
totalordermagl()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm(總順序)函式
canonicalize()
canonicalizef()
canonicalizel()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm (canonicalize) 函式
getpayload()
getpayloadf()
getpayloadl()
setpayload()
setpayloadf()
setpayloadl()
setpayloadsig()
setpayloadsigf()
setpayloadsigl()
2.25 來自 ISO/IEC TS 18661-1:2014 的新 libm (Nan) 函式

POSIX 執行緒 API

最後但同樣重要的是 POSIX 執行緒 API。請注意,glibc 提供了一組現有的、過時的頁面,這些頁面記錄了舊的 LinuxThreads 實現。(這些頁面是在允許重用的許可下編寫的,因此它們包含的一些材料可以在新頁面中使用。)

需要的是一組文件完整 API 的頁面,描述 LinuxThreads 和 NPTL 與標準不同的細節。現有的 pthreads(7) 手冊頁提供了 Linux 上 Pthreads 實現的概述,旨在作為這些手冊頁的背景文件。

所需的手冊頁列表很長(相關函式可以分組在單個頁面上);標有更多星號的頁面可能最希望首先完成。

函式 自 glibc
版本
註釋
pthread_barrierattr_destroy(3)    
pthread_barrierattr_getpshared(3)    
pthread_barrierattr_init(3)    
pthread_barrierattr_setpshared(3)    
pthread_barrier_destroy(3)    
pthread_barrier_init(3)    
pthread_barrier_wait(3)    
pthread_clockjoin_np(3) 2.31  
pthread_condattr_destroy(3)    
pthread_condattr_getclock(3)    
pthread_condattr_getpshared(3)    
pthread_condattr_init(3)    
pthread_condattr_setclock(3)    
pthread_condattr_setpshared(3)    
pthread_cond_broadcast(3)   **
pthread_cond_clockwait(3) 2.30  
pthread_cond_destroy(3)   **
pthread_cond_init(3)   **
pthread_cond_signal(3)   **
pthread_cond_timedwait(3)   **
pthread_cond_wait(3)   **
pthread_getconcurrency(3)    
pthread_getspecific(3), pthread_setspecific(3)   **
pthread_key_create(3)   **
pthread_key_delete(3)   **
pthread_mutexattr_destroy(3)    
pthread_mutexattr_gettype(3)    
pthread_mutexattr_init(3)    
pthread_mutexattr_settype(3)    
pthread_mutexattr_getprotocol(3) 2.4  
pthread_mutexattr_setprotocol(3) 2.4  
pthread_mutexattr_getprioceiling(3) 2.4  
pthread_mutexattr_setprioceiling(3) 2.4  
pthread_mutex_getprioceiling(3) 2.4  
pthread_mutex_setprioceiling(3) 2.4  
pthread_mutex_clocklock(3) 2.30  
pthread_mutex_destroy(3)   **
pthread_mutex_init(3)   **
pthread_mutex_lock(3)   **
pthread_mutex_timedlock(3)   **
pthread_mutex_trylock(3)   **
pthread_mutex_unlock(3)   **
pthread_rwlockattr_destroy(3)    
pthread_rwlockattr_getpshared(3)    
pthread_rwlockattr_init(3)    
pthread_rwlockattr_setpshared(3)    
pthread_rwlock_destroy(3)    
pthread_rwlock_clockrdlock(3) 2.30  
pthread_rwlock_clockwrlock(3) 2.30  
pthread_rwlock_init(3)    
pthread_rwlock_rdlock(3)    
pthread_rwlock_timedrdlock(3)    
pthread_rwlock_timedwrlock(3)    
pthread_rwlock_tryrdlock(3)    
pthread_rwlock_trywrlock(3)    
pthread_rwlock_unlock(3)    
pthread_rwlock_wrlock(3)    
sem_clockwait(3) 2.30