ความแตกต่างของฟีเจอร์ที่ตั้งค่าระหว่างเคอร์เนลหลักและเคอร์เนลที่อูบุนตูใช้อยู่คืออะไร? ทำไม Ubuntu จึงแยกออกจากเคอร์เนลหลักแทนที่จะใช้เคอร์เนลหลักโดยตรง
ความแตกต่างของฟีเจอร์ที่ตั้งค่าระหว่างเคอร์เนลหลักและเคอร์เนลที่อูบุนตูใช้อยู่คืออะไร? ทำไม Ubuntu จึงแยกออกจากเคอร์เนลหลักแทนที่จะใช้เคอร์เนลหลักโดยตรง
คำตอบ:
เคอร์เนล upstream (เรียกว่าเมื่อเราจัดเตรียมเป็นmainline kernels ) เป็นเพียงเคอร์เนล upstream สำหรับเวอร์ชันที่ระบุโดยมีการเปลี่ยนแปลงการกำหนดค่าเล็กน้อยเพียงเล็กน้อยเพื่อให้มีปัญหาน้อยที่สุดในการติดตั้ง Ubuntu
ความแตกต่างระหว่างเมล็ดเหล่านี้และเมล็ดที่ออกสำหรับ Ubuntu นั้นมีการเปลี่ยนแปลงการกำหนดค่าอื่น ๆ มากมายซอร์สแพทช์ * และในบางกรณีคอมไพล์ในโมดูลและการสนับสนุนฮาร์ดแวร์
รหัสที่สำคัญน้อยมากแตกต่างจากต้นน้ำอื่นนอกเหนือจากที่ระบุไว้ข้างต้น
*: ส่วนใหญ่แล้ว patch มักจะมีการเปลี่ยนแปลงการทำงานเริ่มต้นของเคอร์เนล สิ่งเหล่านี้ไม่ จำกัด เพียง: บัญชีดำ, ตารางวิดีโอแปลก ๆ , สร้างขึ้นในโมดูล, การเปลี่ยนแปลงของแหล่งที่ยังไม่ได้อยู่ในต้นไม้ของ Linus หรือคิวที่เสถียรเป็นต้น
ซอร์สแพทช์คือสิ่งที่ทีมใช้เพื่อแนะนำตัวเลือกการกำหนดค่าที่จำเป็นเพื่อสนับสนุนซอฟต์แวร์ที่วางจำหน่ายมากมายสำหรับ Ubuntu รุ่นที่เฉพาะเจาะจง ในหลายกรณีมีความจำเป็นสำหรับแอปพลิเคชันเหล่านั้นในการทำงานอย่างถูกต้อง ความแตกต่างพื้นฐานระหว่างสิ่งนี้และเคอร์เนลอัพสตรีมคือเคอร์เนลอัพสตรีมบริสุทธิ์ไม่ได้มีการกระจายเฉพาะ
ดังนั้นการกำหนดค่าจะไม่มุ่งสู่การรับประกันว่าแอปพลิเคชันบางอย่างทำงานได้ตามที่คาดไว้ การกำหนดค่าเหล่านี้มีอยู่เพื่อให้ระดับความสามารถในการเปลี่ยนแปลงของเคอร์เนลสำหรับบางสิ่ง นอกจากนี้การใช้ quirks ช่วยให้เราสามารถระบุฮาร์ดแวร์ที่ต้องการสิ่งเฉพาะจากเคอร์เนลที่เราสามารถตั้งค่าเมื่อเราตรวจพบพวกเขา
นี่เป็นหนึ่งในคุณสมบัติที่สำคัญของ Linux และเป็นหนึ่งในเหตุผลที่เราสามารถใช้งานบนแพลตฟอร์มที่หลากหลายในช่วงหลายปีที่ผ่านมา มีบางครั้งที่นิสัยใจคอและแพตช์แหล่งทำให้เกิดปัญหาระหว่างกัน ในช่วงเวลานี้เราทำงานเพื่อลดปัญหาการเปลี่ยนแปลงพฤติกรรมเคอร์เนลพื้นฐาน ในหลายกรณีการเปลี่ยนแปลงเหล่านี้ไม่ได้ทำให้อัปสตรีมจนกระทั่งหลังจากการเปิดตัวเนื่องจากส่วนใหญ่จำเป็นต้องใช้รหัสแก้ไขอย่างถูกต้องจัดทำเอกสารสิ่งที่ทำทดสอบการเปลี่ยนแปลงและทำการทดสอบอื่น ๆ และการทดสอบความเครียด
ในกรณีเหล่านี้แพทช์ที่มุ่งหน้าไปยังต้นน้ำจะดำเนินการเป็นแพทช์แหล่งในลักษณะเดียวกันมากก่อนที่มีความเสถียรและแพทช์ที่ยังไม่ได้อยู่ในต้นไม้ของไลนัส ลิงก์ไปยังข้อมูลจำเพาะการตรวจสอบเดลต้าควรทำหน้าที่เป็นข้อมูลอ้างอิงสำหรับสิ่งที่ได้รับการตรวจสอบสำหรับรุ่น Natty ปัจจุบันของเคอร์เนล Ubuntu
เคอร์เนล Linux กำลังพัฒนาอย่างต่อเนื่อง ในบางครั้งทีมงาน Ubuntu ต้องพูดว่า 'ตกลงเราจะใช้เคอร์เนลตามที่ได้รับ' ในบางครั้งคุณอาจได้รับเคอร์เนลใหม่ที่มีอยู่ใน repos เพื่อใช้ใน การกระจายปัจจุบัน
สถานที่นี้สามารถทำให้การอ่านน่าสนใจ แต่มันอาจเป็นเทคนิคอย่างสูง คุณอาจสามารถทำสิ่งที่กำลังทำอยู่ต้นน้ำและสิ่งที่คุณขาดหายไปในขณะนี้ (แต่ในที่สุดจะได้รับ)
ควรสังเกตเช่นเดียวกับซอฟต์แวร์ใด ๆ เคอร์เนลมีแนวโน้มที่จะเป็นข้อผิดพลาดและมักจะเป็นกรณีที่เกิดการถดถอย (สิ่งใหม่ที่เพิ่มเข้ามาแบ่งการทำงานเก่า) เมล็ดวันนี้ IMHO ไม่ได้ตื่นเต้นจริง ๆ กับฉันในแง่ของการทำงานใหม่ ฉันค่อนข้างมีความสุขที่จะใช้เคอร์เนลที่มีอายุสองปี
คุณสามารถดาวน์โหลดแผนผัง git ของ Ubuntu และใช้โปรแกรมดูกราฟิกเพื่อดูแผนผัง git ที่จะแสดงแพทช์ทั้งหมดของ Ubuntu https://wiki.ubuntu.com/Kernel/Dev/KernelGitGuide
อีกทางเลือกที่เป็นไปได้สมัครสมาชิกรายชื่อผู้รับจดหมาย ubuntu-kernel งานทั้งหมดของพวกเขาจะโพสต์ที่นั่นและคุณสามารถรับทราบถึงสิ่งที่พวกเขาทำ แต่มันเป็นปริมาณการใช้งานสูงและ IMHO น่ารำคาญ (แต่เฮ้มันเป็นรายการของพวกเขา )