<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>System Call on Nalar</title>
    <link>https://nalar.dev/id/tags/system-call/</link>
    <description>Recent content in System Call on Nalar</description>
    <generator>Hugo</generator>
    <language>id-id</language>
    <lastBuildDate>Thu, 17 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://nalar.dev/id/tags/system-call/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>O_APPEND Menggabungkan Posisi Akhir dengan Setiap Write</title>
      <link>https://nalar.dev/id/o-append-menggabungkan-posisi-akhir-dengan-setiap-write/</link>
      <pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/id/o-append-menggabungkan-posisi-akhir-dengan-setiap-write/</guid>
      <description>&lt;p&gt;&lt;code&gt;O_APPEND&lt;/code&gt; mengubah write dari dua tindakan yang dapat dipisahkan menjadi satu operasi terpadu: Linux menempatkan open file description pada akhir file saat ini lalu melakukan write sebagai satu langkah atomik.&lt;/p&gt;&#xA;&lt;p&gt;Sifat ini penting ketika beberapa writer menulis ke regular file yang sama. Urutan &lt;code&gt;lseek(fd, 0, SEEK_END)&lt;/code&gt; lalu &lt;code&gt;write(fd, ...)&lt;/code&gt; tidak memiliki semantik append yang sama karena writer lain dapat mengubah file di antara kedua system call tersebut.&lt;/p&gt;&#xA;&lt;h2 id=&#34;status-append-berada-pada-open-file-description&#34;&gt;Status append berada pada open file description&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;O_APPEND&lt;/code&gt; adalah file status flag. File status flag disimpan pada open file description, bukan pada integer file descriptor itu sendiri.&lt;/p&gt;</description>
    </item>
    <item>
      <title>O_CLOEXEC Menutup Descriptor Secara Atomik Saat exec</title>
      <link>https://nalar.dev/id/o-cloexec-menutup-descriptor-secara-atomik-saat-exec/</link>
      <pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/id/o-cloexec-menutup-descriptor-secara-atomik-saat-exec/</guid>
      <description>&lt;p&gt;File descriptor yang dibuat tanpa status close-on-exec dapat ikut terbawa ke program baru selama celah konkurensi yang sangat sempit. Pada proses Linux multithread, mengatur &lt;code&gt;FD_CLOEXEC&lt;/code&gt; lewat pemanggilan &lt;code&gt;fcntl()&lt;/code&gt; setelah descriptor dibuat meninggalkan interval antara pembuatan descriptor dan pembaruan flag tersebut.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;O_CLOEXEC&lt;/code&gt; menghilangkan operasi dua tahap itu. Kernel membuat descriptor dengan flag close-on-exec yang sudah aktif sejak awal, sehingga thread lain tidak dapat melihat kondisi antara ketika descriptor sudah ada tetapi masih bisa diwariskan melalui &lt;code&gt;execve()&lt;/code&gt; yang berhasil.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
