ทำไมเครื่องมือไร้สายรุ่น 30 กลายเป็นเบต้าถาวร


10

ฉันพบข้อมูลที่ดีเกี่ยวกับเครื่องมือไร้สายในQ / Aนี้ เห็นได้ชัดว่ามันถูกนำมาใช้กับเคอร์เนลลินุกซ์ในปี 1997 โดย Jean Tourrhiles สนับสนุนโดย Hewlett Packard

แก้ไข: ดูเหมือนว่า WE (ส่วนขยายไร้สาย) ถูกเพิ่มเข้าไปในเคอร์เนลโดย Tourrhiles ไม่ใช่เครื่องมือไร้สายด้วยตนเอง เครื่องมือมีอยู่ใน distros ส่วนใหญ่เป็นวิธีหลักในการสื่อสารกับเรา /proc/net/wirelessท่านสามารถเข้าดูเราในเคอร์เนลที่

รุ่นล่าสุดที่ปล่อยออกมาเป็นv29ยัง Ubuntu 14 และ 16 ดูเหมือนจะมีv30เบต้า ( iwconfig -v)

ฉันอยากรู้ว่าเกิดอะไรขึ้นกับแพ็คเกจนี้ เหตุใดรุ่น "เบต้า" 30 จึงกลายเป็นรุ่นมาตรฐาน defacto ใช้

HP หยุดระดมทุน Jean Tourrhiles เพื่อหยุดการพัฒนาหรือไม่ หรืออาจจะตัดสินใจว่ามันเสถียรพอที่จะหยุดการพัฒนา แต่ถ้าเป็นเช่นนั้นทำไม 30 จะยังคงเป็นเบต้า?

ฉันพบหน้า Github นี้แต่ดูเหมือนว่าจะเป็นข้อมูลอ้างอิงทางประวัติศาสตร์เท่านั้น

ประวัติรุ่น

ประวัติรุ่น


"ทำไมเครื่องมือไร้สายรุ่น 30 ในเคอร์เนล Linux ... " - เครื่องมือไร้สายไม่ได้อยู่ในเคอร์เนล ไดรเวอร์อยู่ในเคอร์เนลเครื่องมือแบบไร้สายคือ (a) ส่วนประกอบพื้นที่ผู้ใช้สำหรับการกำหนดค่าไดรเวอร์พื้นที่เคอร์เนล
marcelm

1
@marcelm ฉันได้เพิ่มบันทึกในคำถามของฉันตามความคิดเห็นของคุณ ฉันเดาว่าเขาเพิ่ม WE ให้กับเคอร์เนล/proc/net/wirelessแต่เครื่องมือไร้สายนั้นไม่ได้เป็นส่วนหนึ่งของเคอร์เนล แจ้งให้เราทราบหากฉันผิดที่
Philip Kirkbride

1
ใช่เราเป็นส่วนหนึ่งของเคอร์เนล แม่นยำยิ่งขึ้น "ส่วนขยายไร้สาย" เป็นชื่อของพื้นที่ผู้ใช้ <-> ส่วนติดต่อพื้นที่เคอร์เนลที่เปิดเผยโดยการวางสายแบบไร้สายในเคอร์เนล เครื่องมือไร้สายใช้อินเทอร์เฟซนั้นเพื่อจัดการอุปกรณ์ไร้สาย พวกเขาเป็นเวอร์ชันอิสระ ในระบบ Wi-Fi เครื่องมือของฉันคือรุ่นที่ 30 และมันพูดกับเคอร์เนลของฉัน (4.9.0) กับเรารุ่น 22 :)
marcelm

คำตอบ:


17

เครื่องมือไร้สายเลิกใช้งานiwเนื่องจากส่วนขยายไร้สายถูกคัดค้านเนื่องจากอินเตอร์เฟสใหม่ nl80211 สำหรับอุปกรณ์ไร้สาย เอกสาร kernel สำหรับ iwกล่าวว่า

อย่างไรก็ตาม nl80211 อยู่ภายใต้การพัฒนาที่ใช้งานอยู่และไม่ได้ย้ายไดรเวอร์ทั้งหมดไปยังมัน ยังจำเป็นต้องใช้เครื่องมือไร้สายสำหรับอุปกรณ์ที่ไม่ได้ย้ายจากส่วนขยายไร้สาย

เหตุผลที่ Ubuntu (และดิสทริบิวชั่นทุกตัวที่ฉันรู้จัก) ให้รุ่น 30 เบต้าเพราะรุ่นนั้นแก้ไขข้อผิดพลาดที่สำคัญในรุ่น 29 ซึ่งทำให้ iwconfig ล้มเหลวหากมีเครือข่ายมากเกินไปในพื้นที่เนื่องจากบัฟเฟอร์ ล้น. repo Github สำหรับเครื่องมือไร้สายไม่แสดงสิ่งนี้ แต่นี่คือแพทช์ที่เกี่ยวข้องจากArch


17

ฉันควรอ่าน Q / A ที่ฉันเชื่อมโยงได้ดีกว่าเพราะมีลิงก์ไปยังหน้าอภิปรายถึงสาเหตุที่โครงการนี้ถูกทอดทิ้ง :

เรากำลังพัฒนาต่อไปหรือไม่?

ไม่มันไม่ใช่. เรายอมรับเฉพาะการแก้ไขข้อบกพร่องเท่านั้น

ทำไมเราถึงละทิ้งเรา

WEs ใช้ioctl()และแม้ว่าจะioctl()ถูกนำมาใช้และยังคงถูกใช้เป็นการขนส่งมาตรฐานสำหรับการสื่อสารระหว่างผู้ใช้←→ kernelspace การขนส่งใหม่จะได้รับความนิยมด้วยเหตุผลหลายประการ

จากไดรเวอร์อุปกรณ์ Linux - รุ่นที่ 3:

In user space, the ioctl system call has the following prototype:

int ioctl(int fd, unsigned long cmd, ...);

ต้นแบบชัดเจนในรายการของการเรียกระบบ Unix เนื่องจากจุดซึ่งโดยปกติจะทำเครื่องหมายฟังก์ชั่นว่ามีอาร์กิวเมนต์จำนวนตัวแปร อย่างไรก็ตามในระบบจริงการเรียกของระบบจะไม่สามารถมีอาร์กิวเมนต์จำนวนตัวแปรได้ การเรียกของระบบจะต้องมีต้นแบบที่กำหนดไว้อย่างดีเนื่องจากโปรแกรมผู้ใช้สามารถเข้าถึงได้ผ่านทางฮาร์ดแวร์“ ประตู” เท่านั้น ดังนั้นจุดในต้นแบบแทนไม่ได้เป็นจำนวนตัวแปรของการขัดแย้ง char *argpแต่อาร์กิวเมนต์ตัวเลือกเดียวที่ระบุเป็นประเพณี จุดต่าง ๆ อยู่ตรงนั้นเพื่อป้องกันการตรวจสอบประเภทระหว่างการคอมไพล์

นอกจากนี้ยังระบุว่า:

ลักษณะที่ไม่มีโครงสร้างของการioctlโทรทำให้เกิดความนิยมในหมู่ผู้พัฒนาเคอร์เนล ioctlคำสั่งแต่ละคำสั่งคือการเรียกระบบที่แยกจากกันโดยปกติจะไม่มีเอกสารและไม่มีวิธีการตรวจสอบการเรียกเหล่านี้ในลักษณะที่ครอบคลุมใด ๆ นอกจากนี้ยังเป็นเรื่องยากที่จะทำให้ioctlข้อโต้แย้งที่ไม่มีโครงสร้างทำงานเหมือนกันในทุกระบบ ตัวอย่างเช่นพิจารณาระบบ 64 บิตด้วยกระบวนการ userspace ที่ทำงานในโหมด 32 บิต

การแทนที่ส่วนขยายไร้สายคืออะไร

การพัฒนาใหม่ควรเน้นที่ cfg80211 และ nl80211


ด้านหมายเหตุ:ดูเหมือนว่า Jean Tourrhiles ทำงานในโครงการตั้งแต่ประมาณปี 1997-2009 ฉันพบบทความหนึ่งจากปี 2014 ที่บอกว่า Tourrhiles ยังอยู่ที่ HP ทำงานในโครงการที่ชื่อว่า OpenFlow :

Jean Tourrhiles ของ HP ยังทำหน้าที่เป็นประธานในกลุ่ม Extensibility Working Group ซึ่งทำหน้าที่เป็น“ ผู้แก้ไข” เพื่อขับเคลื่อนเทคโนโลยีล่าสุดไปสู่ ​​OpenFlow เวอร์ชันอนาคต

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.