อุปกรณ์เครือข่ายที่ไม่เหมาะสมอย่างเรียบร้อยในรูปแบบการอ่าน / เขียนปกติสำหรับอุปกรณ์ (ยกเว้นอุปกรณ์ป้องกันเครือข่ายซึ่งมีการใช้งานพิเศษ) /dev
บนลินุกซ์ที่พวกเขาไม่ได้อยู่ใน นี่ไม่ได้หมายความว่าพวกเขาไม่สามารถอยู่ใน/dev/
ไดรเวอร์ใด ๆ สามารถสร้างโหนดอุปกรณ์และเครื่องมือ userland สามารถใช้ในการโต้ตอบกับมัน (เช่นผ่าน ioctsl) บนอุปกรณ์เครือข่ายโซลาริสนั้นมี/dev
จุดประสงค์เพื่อ
นี่คือสิ่งที่มักจะอ้างถึง ( ไดรเวอร์อุปกรณ์ Linux , 2nd Ed., 2001; บทที่ 14 ไดรเวอร์เครือข่าย )
ขณะนี้เรากำลังพูดถึงการสนทนาระหว่างชาร์ตและบล็อคไดรเวอร์และพร้อมที่จะก้าวไปสู่โลกแห่งเครือข่ายที่น่าสนใจ เน็ตเวิร์กอินเตอร์เฟสเป็นคลาสมาตรฐานที่สามของอุปกรณ์ Linux และบทนี้อธิบายถึงวิธีการโต้ตอบกับส่วนที่เหลือของเคอร์เนล
[ ... ]
มีความแตกต่างที่สำคัญเล็กน้อยระหว่างดิสก์ที่เมาท์และอินเตอร์เฟสการส่งแพ็คเก็ต เพื่อเริ่มต้นด้วยดิสก์มีอยู่เป็นไฟล์พิเศษในไดเรกทอรี / dev ในขณะที่ส่วนต่อประสานเครือข่ายไม่มีจุดเข้าใช้งานดังกล่าว การทำงานของไฟล์ปกติ (อ่านเขียนและอื่น ๆ ) ไม่สมเหตุสมผลเมื่อใช้กับเน็ตเวิร์กอินเตอร์เฟสดังนั้นจึงเป็นไปไม่ได้ที่จะใช้ Unix "ทุกอย่างเป็นไฟล์" เข้าหาพวกเขา ดังนั้นเน็ตเวิร์กอินเตอร์เฟสมีอยู่ในเนมสเปซของตนเองและเอ็กซ์พอร์ตชุดของการดำเนินการที่แตกต่างกัน
คุณสามารถดูว่ามีอินเทอร์เฟซใดบ้าง/proc/net/dev
และคุณสามารถเข้าถึงการกำหนดค่าอุปกรณ์และสถิติ/sys/class/net/
ได้
ถ้าคุณดูในเอกสารคุณจะไม่เห็นอุปกรณ์เครือข่ายใด ๆ ปกติเพียง TAP / TUN, PPP และเครือข่ายอุปกรณ์ป้องกัน
เคอร์เนลรุ่นลินุกซ์รุ่น pre-1.0 ได้สร้างอุปกรณ์/dev
เพื่อวัตถุประสงค์ในการควบคุม (นั่นเป็นเวลานานนานมาแล้ว ... 1994 หรือรุ่นก่อนหน้า) ถ้าคุณกระโดดในเครื่องเวลาและปลาออกสำเนาMAKEDEV
จาก 1994 คุณจะเห็นว่ามันได้รับการสนับสนุน/dev/ne[0-3]
, /dev/wd[0-3]
และอื่น ๆ มีแนวโน้มที่เคารพNE2000และโคลน ดูคำถามสุดท้ายใน§8.1ของรุ่น 1993ของลินุกซ์อีเธอร์เน็ต HOWTO
ดูเพิ่มเติมที่:
/unix/23199/why-are-network-interfaces-not-in-dev-like-other-devices