X Window System คืออะไร [ปิด]


10

ใครช่วยบอกฉันหน่อยได้ว่า X Window System คืออะไรและใช้ทำอะไร?


4
อืม .... มีข้อมูลมากมายอยู่ที่นี่แล้ว คุณตรวจสอบแหล่งข้อมูลอะไรบ้าง คุณดู WikiPedia แล้วหรือยัง
mdpc

ส่วนไหนของบทความ Wikipedia ที่คุณไม่เข้าใจ
Gilles 'หยุดความชั่วร้าย'

คำตอบ:


18

คุณอาจสับสนและนี่ไม่ใช่ความผิดของคุณเนื่องจาก Linux สามารถมีความหมายได้ 2 ข้อ

  1. Linux เป็นเคอร์เนล: เคอร์เนลนี้ใช้ในหลาย ๆ ระบบรวมถึง Android และระบบที่ระบุไว้ใน 2

  2. ลีนุกซ์มักใช้อย่างสับสนเพื่ออ้างถึงระบบเช่น Debian, Ubuntu, Redhat, CentOs, Suse และอื่น ๆ อีกมากมาย ระบบเหล่านี้อธิบายได้ดีกว่าเป็น Gnu + Linux และในกรณีที่เดสก์ท็อป X11 + Gnu + Linux

X11 เป็นชื่อที่ถูกต้องสำหรับระบบที่คุณกำลังถาม X11 เป็นสถาปัตยกรรมอิสระระบบเครือข่ายโปร่งใสนโยบายไม่มีหน้าต่าง

ไม่ได้เป็นส่วนหนึ่งของระบบปฏิบัติการ

เซิร์ฟเวอร์ X11 ทำงานตามกระบวนการผู้ใช้ กระบวนการอื่นยังทำงานรวมถึงตัวจัดการหน้าต่าง (เพื่อตกแต่งหน้าต่างด้วยเฟรมและแถบชื่อเรื่องและทำการย้ายและปรับขนาด) แถบงานและอื่น ๆ มีการกล่าวว่า“ MS-Windows เป็นระบบหน้าต่างที่มีระบบปฏิบัติการติดอยู่หลังจากที่คิดและ Unix / Linux เป็นระบบปฏิบัติการที่มีระบบหน้าต่างติดอยู่หลังจากที่คิด”

สถาปัตยกรรมอิสระ

X11 ใช้กับ Unixes ส่วนใหญ่: Gnu (รวมถึง Gnu + Linux), Bsd, Solaris, Hp-Ux และอื่น ๆ สามารถใช้กับระบบอื่น ๆ ได้เช่น Vms, MS-Windows, MacOs, AmigaDos และอื่น ๆ อีกมากมาย

เครือข่ายโปร่งใส

คุณสามารถเปิดหน้าต่างบนเครื่องอื่นได้หากคุณมีสิทธิ์ที่ถูกต้อง และสามารถเรียกใช้แอปพลิเคชั่นบนเครื่องระยะไกล (อาจมีประสิทธิภาพมากกว่า) และแสดงแอปพลิเคชั่นในเครื่อง สิ่งนี้ทำบนแอปพลิเคชันต่อหรือตามหน้าต่างซึ่งแตกต่างจาก VNC หรือเดสก์ท็อประยะไกลที่ทำเดสก์ท็อปในแต่ละครั้ง

นโยบายฟรี

X11 ไม่มีนโยบายว่าจะมีหน้าตาเป็นอย่างไรหรือเป็นอย่างไร เรื่องนี้ได้รับอนุญาตให้ทนตั้งแต่ประมาณ 2528 ด้วยนามสกุลเช่นวิดีโอหน้าต่างรูปและ 3d การเปลี่ยนแปลงรูปลักษณ์ทั้งหมดจะกระทำโดยการเปลี่ยนหรือแทนที่ตัวจัดการหน้าต่างและแอพตัวช่วยอื่น ๆ คุณสามารถเปลี่ยนตัวจัดการหน้าต่างโดยไม่ต้องออกจากระบบ ดังนั้นจึงเป็นไปได้ที่จะเปลี่ยนจากบางสิ่งบางอย่างตั้งแต่ปี 1985 (windows ล่วงหน้าของ Microsoft) เป็น 1995 (Win95), 2001 (win XP) เป็น 2014 (Win 7) เป็น (ไม่มีใครในใจที่เหมาะสมจะทำงานบางอย่างเช่น win 8) เพื่อสิ่งที่ดีกว่า - ไม่ต้องรีบูตหรือแม้แต่ออกจากระบบ (แม้ว่าคุณจะมี X11 รุ่น 1985 แต่คุณต้องออกจากระบบเพื่ออัพเกรดเป็นรุ่นที่มี 3D เป็นต้น)


ดูhttp://en.wikipedia.org/wiki/X_Window_System ด้วย


3

X Window System เป็นพื้นฐานสำหรับส่วนต่อประสานกราฟิกกับผู้ใช้ X ใช้รูปแบบไคลเอนต์ - เซิร์ฟเวอร์: เซิร์ฟเวอร์ X มีหน้าที่รับผิดชอบในการแสดง (รูปวาด) ทุกอย่างในขณะที่ลูกค้าแจ้งให้เซิร์ฟเวอร์ X ทราบถึงสิ่งที่จะแสดง (วาด) ไคลเอ็นต์และเซิร์ฟเวอร์ไม่จำเป็นต้องอยู่บนโฮสต์เดียวกัน

X ด้วยตัวมันเองไม่เพียงพอสำหรับส่วนต่อประสานกราฟิกกับผู้ใช้สำหรับเซิร์ฟเวอร์ X "รู้" เพียงวิธีวาดรูปสี่เหลี่ยมเส้นบิตแมปและรูปร่างอื่น ๆ และวิธีการแสดงแบบอักษร นอกจากนี้ยังดูแลหน้าต่างที่ทับซ้อนกันเคอร์เซอร์การจัดการเหตุการณ์อินพุท (เช่นการกดและปล่อยปุ่มโฆษณาเช่นการเคลื่อนไหวของเมาส์การคลิกเมาส์) เป็นต้นมันไม่ได้มอบรูปลักษณ์และความรู้สึกใด ๆ ขึ้นอยู่กับชุดเครื่องมือที่ทำงานบน X ตัวอย่างสำหรับชุดดังกล่าวคือ Qt หรือ GTK ตัวอย่างในอดีตคือ Motif และ XView ชุดเครื่องมือเหล่านี้ "อธิบาย" ว่ามีวิดเจ็ตใดบ้าง (เช่นช่องป้อนข้อความ, กล่องแบบหล่นลง, ปุ่ม, ผืนผ้าใบ ฯลฯ ) ลักษณะที่ปรากฏและลักษณะการทำงาน นอกเหนือจากนั้นยังมีตัวจัดการหน้าต่างที่รับผิดชอบการจัดการหน้าต่างเช่นการตกแต่งหน้าต่าง (เฟรมแถบชื่อเรื่อง) และองค์ประกอบการกระทำที่พวกเขามีให้ (เช่นย่อเล็กสุดขยายสูงสุดปิด ฯลฯ )

ไม่เหมือนกับ Microsoft Windows X ไม่ได้เป็นส่วนหนึ่งของระบบปฏิบัติการ แม้ว่าเซิร์ฟเวอร์ X เคยมีสิทธิ์พิเศษเพื่อใช้ฮาร์ดแวร์กราฟิก แต่คุณสามารถใช้ระบบ unix / linux ได้อย่างสมบูรณ์แบบโดยไม่มี X อย่างไรก็ตามซอฟต์แวร์จำนวนมากขึ้นอยู่กับไลบรารี X ดังนั้นแม้ว่าระบบ X window จะไม่ ติดตั้งอย่างสมบูรณ์ในระบบคุณอาจพบห้องสมุด X


"แต่มากของซอฟต์แวร์ขึ้นอยู่กับห้องสมุดเอ็กซ์ [ ... ]" ผมไม่สามารถนึกว่าทำไม Xlib จะต้องถ้าไม่มีเซิร์ฟเวอร์ X เพื่อให้กล่าวว่าโปรแกรมที่มีประโยชน์ จุดทั้งหมดของ X11 คือการอำนวยความสะดวกให้กับ GUI ดังนั้นโปรแกรมทั้งหมดที่ใช้งานจะเกี่ยวข้องกับ GUI และมีเป็นโปรแกรมที่ใช้ Xlib ในขณะที่ไม่เคยวิ่งพล่านหน้าต่าง lswตัวอย่างเช่นแสดงรายการไคลเอ็นต์ที่เปิดทั้งหมดสำหรับเซิร์ฟเวอร์ที่กำหนด รันในเทอร์มินัลและพิมพ์เอาต์พุตไปยัง stdout ไม่มีประโยชน์มากหากไม่มีไคลเอนต์ที่จะแสดงรายการเนื่องจากไม่มี X server ติดตั้งอยู่
Braden ที่ดีที่สุด

@BradenBest เท่าที่ฉันรู้ห้องสมุด X มีมากกว่ารหัสเฉพาะ GUI
ตอบโต้

1
จะเป็นการฝึกเขียนโปรแกรมที่ไม่ถูกต้องหรือไม่ที่จะใช้ xlib สำหรับโปรแกรมที่ไม่โต้ตอบกับเซิร์ฟเวอร์ X ใช่หรือไม่
Braden ที่ดีที่สุด

0

ในLinuxหลักGUIคือเรียกว่าX Window System(หรือ X สำหรับระยะสั้น) การกำหนดค่าบางอย่างสำหรับการX Window Systemรวม: แบบอักษรเครื่องมือเข้าสู่ระบบ GUI สภาพแวดล้อมเดสก์ท็อปผู้ใช้โดยใช้ X สำหรับการเข้าถึงระยะไกลและการแปล

บางตัวเลือก X เซิร์ฟเวอร์สำหรับการLinuxคือXFree86, และX.org-X11 เป็นตัวเลือกที่โดดเด่นของเซิร์ฟเวอร์เอ็กซ์จนกระทั่งปี 2004 เมื่อdistros เปลี่ยนไปAccelerated-XXFree86LinuxX.org-X11

ข้อมูลเพิ่มเติมเกี่ยวกับX.org-X11สามารถพบได้ในhttp://www.x.org/wiki


X Window System ไม่ใช่ GUI มันเป็นพื้นฐานสำหรับระบบหน้าต่าง
Countermode

@countermode นี้มาจากสิ่งที่ฉันรวบรวมเมื่อฉันเงยหน้าขึ้นมองสิ่งที่ระบบวินโดว์อยู่ในลินุกซ์
ryekayo

จากนั้นข้อมูลนั้นจะเข้าใจผิด ดูคำตอบของฉันสำหรับพื้นหลังเพิ่มเติม
ตอบโต้

@countermode และคุณใช้ข้อมูลนี้จากที่ไหน ฉันค้นหาสิ่งนี้ในหนังสือการบริหารระบบ Linux และสามารถต่อยอดออนไลน์นี้ได้หรือไม่
ryekayo

ฉันอยู่ที่นี่มาระยะหนึ่งแล้วและได้เห็นพัฒนาการของ X. โดยไม่ให้รายละเอียดฉันคิดว่าฉันสามารถอ้างได้ว่ามีความเข้าใจที่ดีเกี่ยวกับ X คืออะไรและไม่ได้เป็นอะไร
Countermode

0

X-Windowเป็นซอฟต์แวร์ที่อนุญาตให้วาดหน้าต่างบนหน้าจอฮาร์ดแวร์ มันเพียงสร้างย้ายและปิดหน้าต่างรวมทั้งตีความเหตุการณ์เมาส์เช่นการเลื่อนเคอร์เซอร์และคลิกปุ่ม X-หน้าต่างไม่ได้ให้ทุกสิ่งที่คุณสมบัติที่ไม่จำเป็นเช่น Windows ดีเฟรมรูปแบบสีผลกราฟิกเสียงและอื่น ๆ - มันเป็นงานสำหรับจัดการหน้าต่างที่ทำงานอยู่ด้านบนของX-หน้าต่าง

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