Does named pipe modify the filesystem?
Clash Royale CLAN TAG#URR8PPP
If I create a named pipe and then read/write on it, is the filesystem where the named pipe resides affected? I.e. is the data buffered on the filesystem until read, or does it reside in memory only?
filesystems pipe fifo
add a comment |
If I create a named pipe and then read/write on it, is the filesystem where the named pipe resides affected? I.e. is the data buffered on the filesystem until read, or does it reside in memory only?
filesystems pipe fifo
add a comment |
If I create a named pipe and then read/write on it, is the filesystem where the named pipe resides affected? I.e. is the data buffered on the filesystem until read, or does it reside in memory only?
filesystems pipe fifo
If I create a named pipe and then read/write on it, is the filesystem where the named pipe resides affected? I.e. is the data buffered on the filesystem until read, or does it reside in memory only?
filesystems pipe fifo
filesystems pipe fifo
edited Feb 10 at 19:20
Rui F Ribeiro
41.1k1479137
41.1k1479137
asked Jul 1 '13 at 13:59
michelemarconmichelemarcon
1,07062034
1,07062034
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
The file object itself is created in the filesystem, but no data is stored in a file system. From the mkpipe(3) manpage:
A FIFO special file is similar to a pipe, except that it is created in
a different way. Instead of being an anonymous communications channel,
a FIFO special file is entered into the file system by calling
mkfifo().
About the only time the data might be stored on disk is during hibernation when memory is written to the swap space, including buffers - however this an corner case.
add a comment |
Nope. Writing to a named pipe does not modify the filesystem (except for access times).
Here's a demonstration:
$ mkdir test
$ mkdir test-ro
$ mkfifo test/fifo
$ mount --bind test test-ro
$ mount -o remount,ro test-ro
$ cat test/fifo & echo something >> test/fifo
something
As you can see, even though the fifo was on a read-only filesystem, we were able to write to it.
Named pipes don't store any piped data on the filesystem. Their data is buffered in memory, separate from the filesystem buffers.
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f81334%2fdoes-named-pipe-modify-the-filesystem%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
The file object itself is created in the filesystem, but no data is stored in a file system. From the mkpipe(3) manpage:
A FIFO special file is similar to a pipe, except that it is created in
a different way. Instead of being an anonymous communications channel,
a FIFO special file is entered into the file system by calling
mkfifo().
About the only time the data might be stored on disk is during hibernation when memory is written to the swap space, including buffers - however this an corner case.
add a comment |
The file object itself is created in the filesystem, but no data is stored in a file system. From the mkpipe(3) manpage:
A FIFO special file is similar to a pipe, except that it is created in
a different way. Instead of being an anonymous communications channel,
a FIFO special file is entered into the file system by calling
mkfifo().
About the only time the data might be stored on disk is during hibernation when memory is written to the swap space, including buffers - however this an corner case.
add a comment |
The file object itself is created in the filesystem, but no data is stored in a file system. From the mkpipe(3) manpage:
A FIFO special file is similar to a pipe, except that it is created in
a different way. Instead of being an anonymous communications channel,
a FIFO special file is entered into the file system by calling
mkfifo().
About the only time the data might be stored on disk is during hibernation when memory is written to the swap space, including buffers - however this an corner case.
The file object itself is created in the filesystem, but no data is stored in a file system. From the mkpipe(3) manpage:
A FIFO special file is similar to a pipe, except that it is created in
a different way. Instead of being an anonymous communications channel,
a FIFO special file is entered into the file system by calling
mkfifo().
About the only time the data might be stored on disk is during hibernation when memory is written to the swap space, including buffers - however this an corner case.
answered Jul 1 '13 at 14:07
ArcegeArcege
17.2k44257
17.2k44257
add a comment |
add a comment |
Nope. Writing to a named pipe does not modify the filesystem (except for access times).
Here's a demonstration:
$ mkdir test
$ mkdir test-ro
$ mkfifo test/fifo
$ mount --bind test test-ro
$ mount -o remount,ro test-ro
$ cat test/fifo & echo something >> test/fifo
something
As you can see, even though the fifo was on a read-only filesystem, we were able to write to it.
Named pipes don't store any piped data on the filesystem. Their data is buffered in memory, separate from the filesystem buffers.
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
add a comment |
Nope. Writing to a named pipe does not modify the filesystem (except for access times).
Here's a demonstration:
$ mkdir test
$ mkdir test-ro
$ mkfifo test/fifo
$ mount --bind test test-ro
$ mount -o remount,ro test-ro
$ cat test/fifo & echo something >> test/fifo
something
As you can see, even though the fifo was on a read-only filesystem, we were able to write to it.
Named pipes don't store any piped data on the filesystem. Their data is buffered in memory, separate from the filesystem buffers.
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
add a comment |
Nope. Writing to a named pipe does not modify the filesystem (except for access times).
Here's a demonstration:
$ mkdir test
$ mkdir test-ro
$ mkfifo test/fifo
$ mount --bind test test-ro
$ mount -o remount,ro test-ro
$ cat test/fifo & echo something >> test/fifo
something
As you can see, even though the fifo was on a read-only filesystem, we were able to write to it.
Named pipes don't store any piped data on the filesystem. Their data is buffered in memory, separate from the filesystem buffers.
Nope. Writing to a named pipe does not modify the filesystem (except for access times).
Here's a demonstration:
$ mkdir test
$ mkdir test-ro
$ mkfifo test/fifo
$ mount --bind test test-ro
$ mount -o remount,ro test-ro
$ cat test/fifo & echo something >> test/fifo
something
As you can see, even though the fifo was on a read-only filesystem, we were able to write to it.
Named pipes don't store any piped data on the filesystem. Their data is buffered in memory, separate from the filesystem buffers.
answered Jul 1 '13 at 14:05
user26112
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
add a comment |
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
Wouldn't a slow consumer of the fifo pipe cause the buffer to page to disk?
– thesmart
Jul 6 '16 at 6:22
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f81334%2fdoes-named-pipe-modify-the-filesystem%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown