ทำไม cpio มากกว่า tar
การตัดสินใจครั้งนี้เกิดขึ้นในเดือนธันวาคม 2544 การสนทนาเริ่มต้นที่นี่:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1538.html
และวางกระทู้ที่สอง (โดยเฉพาะกับ tar vs cpio) เริ่มต้นที่นี่:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1587.html
รุ่นสรุปที่รวดเร็วและสกปรก (ซึ่งไม่สามารถใช้แทนการอ่านหัวข้อด้านบน) คือ:
1) cpio เป็นมาตรฐาน มันมีอายุหลายสิบปี (จาก AT&T วัน) และใช้กันอย่างแพร่หลายใน Linux (ภายใน RPM ดิสก์ไดรเวอร์อุปกรณ์ของ Red Hat) นี่คือบทความ Linux วารสารเกี่ยวกับมันจาก 1996:
http://www.linuxjournal.com/article/1213
ไม่เป็นที่นิยมเท่า tar เนื่องจากเครื่องมือบรรทัดคำสั่ง cpio ดั้งเดิมต้องการอาร์กิวเมนต์อาร์กิวเมนต์บรรทัดคำสั่ง _truly_hideous_ แต่นั่นไม่ได้บอกว่าวิธีการเกี่ยวกับรูปแบบการเก็บถาวรและมีเครื่องมือทางเลือกเช่น:
http://freecode.com/projects/afio
2) รูปแบบไฟล์เก็บถาวร cpio ที่เลือกโดยเคอร์เนลนั้นเรียบง่ายกว่าและสะอาดกว่า (และง่ายกว่าในการสร้างและแยกวิเคราะห์) กว่ารูปแบบไฟล์เก็บถาวร tar หลายรูปแบบ รูปแบบไฟล์เก็บถาวร initramfs ที่สมบูรณ์มีการอธิบายใน buffer-format.txt สร้างขึ้นใน usr / gen_init_cpio.c และแยกใน init / initramfs.c ทั้งสามร่วมกันมีข้อความที่มนุษย์อ่านได้ทั้งหมดน้อยกว่า 26k
3) โครงการมาตรฐานของ GNU บน tar นั้นมีความเกี่ยวข้องโดยประมาณเท่ากับมาตรฐาน Windows บน zip Linux ไม่ได้เป็นส่วนหนึ่งของทั้งคู่และมีอิสระในการตัดสินใจทางเทคนิคของตัวเอง
4) เนื่องจากนี่เป็นรูปแบบภายในเคอร์เนลจึงอาจเป็น
เรื่องใหม่ได้อย่างง่ายดาย เคอร์เนลมีเครื่องมือของตัวเองเพื่อสร้างและแยกรูปแบบนี้ต่อไป การใช้มาตรฐานที่มีอยู่นั้นเป็นที่นิยมมากกว่า แต่ไม่จำเป็น
5) Al Viro ได้ทำการตัดสินใจ (อ้างถึง: "tar เป็นที่น่าเกลียดเหมือนนรกและไม่ได้รับการสนับสนุนทางด้านเคอร์เนล"):
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1540.html
อธิบายเหตุผลของเขา:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1550.html
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1638.html
และที่สำคัญที่สุดคือการออกแบบและดำเนินการรหัส initramfs