2014-12-11 2 views
0

поэтому я читаю некоторый код ядра и обратите внимание на это: http://lxr.free-electrons.com/source/include/linux/fs.h?v=2.6.32#L63linux kernel, когда файловый дескриптор недоступен для pread?

в строке 69, мы имеем:

/* file can be accessed using pread */ 
    #define FMODE_PREAD    ((__force fmode_t)8) 

мне интересно, когда бы, FD быть не доступны pread? Я думал, что мы можем сделать pread на любом fd ...

Спасибо!

Erben

ответ

1

man pread на моей системе Linux говорит:

The file referenced by fd must be capable of seeking. 

Так что, если дескриптор файла не является доступной для поиска (например, сокет или STDIN), вы не сможете pread это.

+0

awesome ... Я пытался выяснить, почему созданный fd недоступен для pread. Оказывается, fd равно 0. Поэтому я задал этот глупый вопрос. –

Смежные вопросы