UNIX คืออะไร?
คำตอบสั้น ๆ : UNIX เป็นข้อกำหนด / มาตรฐานในปัจจุบัน
ในช่วงเวลาของการเขียนเพื่ออ้างอิงแหล่งข้อมูลอย่างเป็นทางการ "UNIX®เป็นเครื่องหมายการค้าจดทะเบียนของ The Open Group" ซึ่งเป็น บริษัท ที่มีหลายสิ่งที่ให้การรับรอง UNIX :
"UNIX®ซึ่งเป็นมาตรฐานแบบเปิดที่เจ้าของและบริหารโดย The Open Group เป็นผู้เปิดใช้เทคโนโลยีที่สำคัญและลดค่าใช้จ่ายโดยรวมในการเป็นเจ้าของลดความว่องไวของไอทีความมั่นคงและการทำงานร่วมกันในสภาพแวดล้อมที่หลากหลาย ."
หน้าเดียวกันระบุโดยเฉพาะว่าข้อกำหนดกำหนด UNIX:
มาตรฐานการรับรองเวอร์ชันล่าสุดคือ UNIX V7 สอดคล้องกับข้อกำหนดคุณลักษณะ UNIX เดี่ยวรุ่น 4, 2013 Edition
รายละเอียดของรายละเอียดเหล่านั้นสามารถพบได้ที่นี่ มาตรฐานล่าสุดที่มีอยู่ในเว็บไซต์ของพวกเขาอย่างน่าประหลาดใจคือ UNIX 03 และเพื่ออ้างอิงแหล่งข้อมูลอื่น"UNIX® 03 - เครื่องหมายสำหรับระบบที่สอดคล้องกับเวอร์ชัน 3 ของข้อมูลจำเพาะ UNIX เดี่ยว"
ในการอ้างถึงหน้าเกี่ยวกับเราโดยเน้นที่ตัวหนา:
ความสำเร็จของวิธีการ UNIX ทำให้ระบบปฏิบัติการ“ มีลักษณะเหมือนกัน” จำนวนมากซึ่งมักแตกต่างกันในเรื่องความเข้ากันได้และการทำงานร่วมกัน เพื่อแก้ปัญหานี้ผู้ขายและผู้ใช้ร่วมกันในปี 1980 เพื่อสร้างมาตรฐานPOSIX®และต่อมาสเปก
ดังนั้นสิ่งนี้แนะนำ (หรืออย่างน้อยก็คือการตีความของฉัน) คือว่าเมื่อระบบปฏิบัติการเป็นไปตามมาตรฐาน POSIX และข้อมูลจำเพาะของ UNIX เดี่ยวมันเข้ากันได้ในพฤติกรรมที่มี Unix เป็นระบบปฏิบัติการที่ครั้งหนึ่งเคยมีอยู่ในประวัติศาสตร์ โปรดทราบว่าสิ่งนี้ไม่ได้กล่าวถึงการมีร่องรอยของซอร์สโค้ด Unix ดั้งเดิมและไม่ได้กล่าวถึงเคอร์เนลในทางใด ๆ (สิ่งนี้จะกลายเป็นสิ่งสำคัญในภายหลัง)
สำหรับ AT&T และ System V Unix ที่พัฒนาโดย Ritchie และ Thompson ทุกวันนี้เราสามารถพูดได้ว่ามันหยุดอยู่ ขึ้นอยู่กับแหล่งที่มาข้างต้นก็ดูเหมือน UNIX ในปัจจุบันไม่ได้เป็นที่ OS เฉพาะ แต่เป็นมาตรฐานที่ได้รับออกจากทั่วไปที่ดีที่สุดสำหรับวิธีการที่ระบบปฏิบัติการ Unix ในครอบครัวประพฤติ
macOS X อยู่ที่ไหนในโลก * nix
ในคำจำกัดความที่เจาะจงมากmacOS รุ่น 10.13 High Sierra บนฮาร์ดแวร์ที่ใช้ Intelนั้นเป็นไปตามมาตรฐาน UNIX 03 และเพื่ออ้างถึงใบรับรอง pdf "Apple Inc. ได้ทำข้อตกลงใบอนุญาตเครื่องหมายการค้ากับ X / Open Company Limited" หมายเหตุด้านข้าง: ฉันลังเลที่จะถามว่า macOS 10.13 สำหรับฮาร์ดแวร์ที่ไม่ใช่ของ Intel จะได้รับการปฏิบัติอย่างไร แต่การพิจารณาว่ามีการกล่าวถึงฮาร์ดแวร์สำหรับระบบปฏิบัติการอื่นฮาร์ดแวร์นั้นมีความสำคัญ ตัวอย่าง: "Hewlett Packard Enterprise: HP-UX 11i V3 Release B.11.31 หรือใหม่กว่าบนเซิร์ฟเวอร์ HP 9000 พร้อมสถาปัตยกรรมที่แม่นยำ" (จากหน้าลงทะเบียน )
ลองกลับไปที่หัวข้อก่อนหน้าของคำตอบของฉัน เนื่องจากระบบปฏิบัติการรุ่นนี้เป็นไปตามมาตรฐานความสามารถในการทำงานร่วมกันและความเข้ากันได้หมายความว่าระบบปฏิบัติการนั้นใกล้เคียงกับพฤติกรรมและการใช้งานระบบมากที่สุดเท่าที่จะเป็นไปได้สำหรับ Unix ดั้งเดิมในฐานะระบบปฏิบัติการ อย่างน้อยที่สุดมันก็จะปิดในพฤติกรรมและในสภาพแวดล้อม ยิ่งเข้าใกล้ระดับระบบและระดับเคอร์เนลมากเท่าไหร่พื้นที่ที่ได้รับจะมีความเฉพาะเจาะจงมากขึ้น แต่อย่างน้อยกลไกและพฤติกรรมพื้นฐานที่มีอยู่ในระบบปฏิบัติการยูนิกซ์ควรอยู่ในระบบปฏิบัติการที่มีจุดมุ่งหมายเพื่อให้เข้ากันได้ macOS X น่าจะใกล้เคียงกับเป้าหมายนั้นมาก
การกระจายคืออะไร
ในการอ้างถึงWikipedia :
การกระจาย Linux (มักจะย่อว่า distro) เป็นระบบปฏิบัติการที่ทำจากการรวบรวมซอฟต์แวร์ซึ่งขึ้นอยู่กับเคอร์เนล Linux และมักจะเป็นระบบการจัดการแพคเกจ
Let 's จำที่สองที่เป็นลินุกซ์ใน Linux Kernel ควรจะเป็นแจกจ่ายซอฟต์แวร์ด้วยการปรับเปลี่ยนหรืออย่างน้อยให้สอดคล้องกับGPL v2 หากเราพิจารณาตัวจัดการแพคเกจและเคอร์เนล Ubuntu และ Red Hat จะมีการแจกแจงที่เหมาะสม macOS X มีเคอร์เนลที่แตกต่างจาก AT&T Unix ดั้งเดิมดังนั้นการเรียกใช้ macOS X จึงเป็นการกระจาย Unix ที่ไม่สมเหตุสมผล ผู้คนแนะนำว่าเคอร์เนล macOS X เป็นพื้นฐานของ FreeBSD แต่จะอ้างถึงFreeBSD Wiki :
เคอร์เนล XNU ที่ใช้บน OS X รวมถึงระบบย่อยบางอย่างจาก FreeBSD (รุ่นเก่ากว่า) แต่ส่วนใหญ่เป็นการใช้งานที่เป็นอิสระ
บางคนเรียกผิดพลาดว่า OS X kernel ดาร์วิน หากต้องการอ้างอิงคำแนะนำการเขียนโปรแกรมเคอร์เนลของ Apple :
เคอร์เนลพร้อมกับส่วนหลักอื่น ๆ ของ OS X เรียกรวมว่าดาร์วิน ดาร์วินเป็นระบบปฏิบัติการที่สมบูรณ์โดยใช้เทคโนโลยีเดียวกับที่รองรับ OS X
และอ้างถึงหน้าเดียวกัน:
เทคโนโลยีของดาร์วินนั้นใช้เทคโนโลยี BSD, Mach 3.0 และ Apple
จากทุกสิ่งที่กล่าวมาข้างต้นเราสามารถพูดได้อย่างมั่นใจว่า OS X ไม่ใช่การกระจายในแง่ของการกระจาย Linux ในทำนองเดียวกันระบบปฏิบัติการอื่น ๆ ที่กล่าวถึงนั้นเป็นไปตาม POSIX และได้รับการรับรองระบบ Unix แต่ก็แตกต่างกันในรูปแบบของเมล็ดและความแปรปรวนของการเรียกใช้ระบบพื้นฐาน (ซึ่งเป็นเหตุผลว่า ดังนั้นจึงไม่ใช่การกระจายในแง่การกระจาย Linux เป็น - แกนกลางที่มีการเปลี่ยนแปลงในสาธารณูปโภค ในกรณีของ Linux คุณจะเห็นหนังสือเกี่ยวกับการเขียนโปรแกรมระบบ Linux หรือการเขียนโปรแกรมเคอร์เนล Linux ไม่ใช่การเขียนโปรแกรมระบบเฉพาะสำหรับการจัดจำหน่ายเพราะไม่มีอะไรเฉพาะระบบเกี่ยวกับการกระจายเฉพาะ
การยืนยันสิ่งที่เราเห็นที่นี่สามารถพบได้ในเอกสารอย่างเป็นทางการ ตัวอย่างเช่นบทความเกี่ยวกับdeveloperWorks โดย IBMซึ่งระบุความแตกต่างระหว่างประเภท UNIX OS และสถานะการแจกแจงของ Linux (เน้นเพิ่ม):
ที่ทันสมัยที่สุด UNIX สายพันธุ์ที่รู้จักกันในวันนี้จะได้รับใบอนุญาตรุ่นหนึ่งรุ่น UNIX เดิม ดวงอาทิตย์ Solaris, Hewlett-Packard HP-UX และของไอบีเอ็มAIX®มีรสชาติของ UNIX ที่มีองค์ประกอบเป็นเอกลักษณ์ของตนเองและฐานราก
กล่าวอีกนัยหนึ่งพวกเขาอยู่บนพื้นฐานเดียวกัน แต่พวกเขาไม่ได้แบ่งปันสิ่งเดียวกันในความรู้สึก Linux distros แบ่งปันเคอร์เนล
การพิจารณา
โปรดสังเกตว่าคำว่าการกระจายคำส่วนใหญ่จะใช้เมื่ออ้างอิงระบบปฏิบัติการที่มีเคอร์เนลลินุกซ์เป็นหลัก ยกตัวอย่างเช่นระบบปฏิบัติการประเภท BSD: มีGhostBSDซึ่งขึ้นอยู่กับเคอร์เนลและใช้ยูทิลิตี้บางอย่างของFreeBSDแต่ฉันไม่เคยเห็นมันถูกอ้างถึงเป็นการกระจาย BSD ระบบปฏิบัติการ BSD ทุกคนกล่าวถึงเฉพาะสิ่งที่มันอิงและโดยปกติระบบปฏิบัติการจะกล่าวถึงว่าเป็นระบบปฏิบัติการในสิทธิของตนเอง แน่นอน BSD ย่อมาจาก Berkeley Software Distribution แต่ ... ใช่แล้ว
เพื่ออ้างอิงคำตอบนี้บนเว็บไซต์ของเราเพื่อตอบคำถามว่า BSD รุ่นต่าง ๆ ใช้เมล็ดเดียวกันหรือไม่:
ไม่แม้ว่าจะมีความคล้ายคลึงกันเนื่องจากส้อมประวัติศาสตร์ แต่ละโครงการมีวิวัฒนาการแยกกัน
พวกมันไม่ใช่การกระจายในแง่ของการกระจาย Linux พิจารณาประกาศเกี่ยวกับลิขสิทธิ์จากเอกสารนี้ :
บางส่วนของผลิตภัณฑ์นี้อาจมาจากระบบUNIX®และ Berkeley 4.3 BSD
หมายเหตุ
สรุปแล้ว:
- macOS X สามารถอ้างถึงได้ทั้ง Unix-like OS, Unix-like system, Unix Implementation, POSIX compliant-OS เมื่อคุณต้องการเชื่อมโยงกับ AT&T Unix ดั้งเดิม
- "Unix version" จะไม่เป็นคำที่เหมาะสมเพราะ macOS X นั้นแตกต่างจาก AT&T Unix ดั้งเดิมอย่างมากและดังที่ได้กล่าวมาก่อนหน้านี้ว่า Unix ในแง่ของซอฟแวร์ไม่เป็นที่รู้จักมากขึ้น
- อาจเป็นคำว่า "การกระจาย" ที่เหมาะสมกับโลกลินุกซ์เท่านั้น
- ปัญหาจริงก็คือคุณ (ผู้อ่าน) และฉันมีเวลามากเกินไปที่จะโต้แย้งเกี่ยวกับหัวข้อที่นักกฎหมายควรจะโต้เถียง บางทีเราควรเป็นเหมือน Linux Torvalds และใช้คำศัพท์และระบบปฏิบัติการที่ช่วยให้เราสามารถดำเนินชีวิตต่อไปและทำสิ่งที่เราใส่ใจอย่างจริงใจและควรใส่ใจ