table of contents
- unstable 4.30.0-1
| vmsplice(2) | System Calls Manual | vmsplice(2) |
NAVN¶
vmsplice - splejs brugersider til/fra en datakanal
BIBLIOTEK¶
C-standardbibliotek (libc, -lc)
SYNOPSIS¶
#define _GNU_SOURCE /* Se feature_test_macros(7) */ #include <fcntl.h>
ssize_t vmsplice(int fd, const struct iovec *iov,
size_t nr_segs, unsigned int flags);
BESKRIVELSE¶
Hvis fd åbnes for skrivning så oversætter systemkaldet vmsplice() nr_segs-intervaller for brugerhukommelse beskrevet af iov til en datakanal. Hvis fd er åben for læsning udfylder systemkaldet vmsplice() nr_segs-intervaller for brugerhukommelse beskrevet af iov fra en datakanal. Fildeskriptoren fd skal referere til en datakanal.
Tekstsøgeren iov peger på en tabel af iovec-strukturer som beskrevet i iovec(3type).
Argumentet flags er en bit-maske, der er sammensat af ORing sammen med nul eller flere af de følgende værdier:
- SPLICE_F_MOVE
- Ubrugt for vmsplice(); se splice(2).
- SPLICE_F_NONBLOCK
- Bloker ikke en I/O; se splice(2) for yderligere detaljer.
- SPLICE_F_MORE
- Har i øjeblikket ingen effekt for vmsplice(), men kan blive implementeret i fremtiden; se splice(2).
- SPLICE_F_GIFT
- Brugersiderne er gift for kernen. Programmet ændrer måske ikke denne hukommelse nogensinde, eller sidemellemlageret og data på disken kan være forskellige. At give sider i gave til kernen betyder, at en efterfølgende splice(2) SPLICE_F_MOVE med succes kan flytte siderne; hvis dette flag ikke er angivet, så skal en efterfølgende splice(2) SPLICE_F_MOVE kopiere siderne. Data skal være korrekt sidejusteret, både i hukommelse og længde.
RETURVÆRDI¶
Ved succesfuld fuldførelse returnerer vmsplice() antallet af byte overført til datakanalen. Ved fejl returnerer vmsplice() -1 og errno angives for at indikere fejlen.
FEJL¶
STANDARDER¶
Linux.
HISTORIK¶
Linux 2.6.17, glibc 2.5.
NOTER¶
vmsplice() følger de andre vektoriserede læse/skriv-typefunktioner når det kommer til begrænsninger på antallet af segmenter sendt ind. Denne begrænsning er IOV_MAX som defineret i <limits.h>. I øjeblikket er denne begrænsning 1024.
vmsplice() understøtter korrekt splejsning kun fra brugerhukommelse til en datakanal. I den modsatte retning kopieres bare dataene til brugerrummet. Men dette gør grænsefladen pæn og symmetrisk og gør det muligt at bygge på vmsplice() med plads til fremtidige forbedringer i ydelsen.
SE OGSŶ
OVERSÆTTELSE¶
Oversættere af denne manual til dansk Joe Hansen <joedalton2@yahoo.dk>
Denne oversættelse er gratis dokumentation; læs GNU General Public License version 3 eller nyere for ophavsretbetingelser. Der er INGEN ANSVAR.
Hvis du støder på fejl i oversættelsen af denne vejledning, skal du sende en besked til debian-l10n-danish@lists.debian.org.
| 8. februar 2026 | Linux man-pages 6.17 |