นี่คือคำสั่ง Xnest ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
Xnest - เซิร์ฟเวอร์ X ที่ซ้อนกัน
เรื่องย่อ
เอ็กซ์เนส [ ตัวเลือก ]
DESCRIPTION
เอ็กซ์เนส เป็นทั้งไคลเอนต์ X และเซิร์ฟเวอร์ X เอ็กซ์เนส เป็นไคลเอนต์ของเซิร์ฟเวอร์จริงซึ่ง
จัดการคำขอหน้าต่างและกราฟิกในนามของมัน เอ็กซ์เนส เป็นเซิร์ฟเวอร์ของตัวเอง
ลูกค้า เอ็กซ์เนส จัดการคำขอหน้าต่างและกราฟิกในนามของพวกเขา ให้กับลูกค้าเหล่านี้
เอ็กซ์เนส ดูเหมือนจะเป็นเซิร์ฟเวอร์ทั่วไป
OPTIONS
เอ็กซ์เนส รองรับตัวเลือกมาตรฐานทั้งหมดของการใช้งานเซิร์ฟเวอร์ตัวอย่าง สำหรับข้อมูลเพิ่มเติม
รายละเอียดโปรดดู เอ็กซ์เซิร์ฟเวอร์(1). อาร์กิวเมนต์เพิ่มเติมต่อไปนี้ได้รับการสนับสนุนเช่นกัน
-แสดง เชือก
ตัวเลือกนี้ระบุชื่อที่แสดงของเซิร์ฟเวอร์จริงที่ เอ็กซ์เนส ควรพยายาม
เชื่อมต่อกับ หากไม่ได้ระบุไว้ในบรรทัดคำสั่ง เอ็กซ์เนส จะอ่าน การแสดงผล
ตัวแปรสภาพแวดล้อมเพื่อค้นหาข้อมูลนี้
-ซิงค์ ตัวเลือกนี้บอก เอ็กซ์เนส เพื่อซิงโครไนซ์การทำงานของหน้าต่างและกราฟิกกับ
เซิร์ฟเวอร์จริง นี่เป็นตัวเลือกที่มีประโยชน์สำหรับการดีบัก แต่จะช้าลง เอ็กซ์เนส's
ประสิทธิภาพอย่างมาก ไม่ควรใช้เว้นแต่จำเป็นจริงๆ
-เต็ม ตัวเลือกนี้บอก เอ็กซ์เนส เพื่อใช้ประโยชน์จากการสร้างวัตถุเซิร์ฟเวอร์จริงและ
เปิดการเชื่อมต่อใหม่กับเซิร์ฟเวอร์จริงทุกครั้งที่เซิร์ฟเวอร์ที่ซ้อนกันสร้างใหม่
การใช้งานเซิร์ฟเวอร์ตัวอย่างจะสร้างวัตถุทั้งหมดในเซิร์ฟเวอร์ใหม่เมื่อ
ไคลเอนต์สุดท้ายของเซิร์ฟเวอร์นี้สิ้นสุดลง เมื่อสิ่งนี้เกิดขึ้น เอ็กซ์เนส โดยค่าเริ่มต้น
รักษาหน้าต่างระดับบนสุดเดียวกันและการเชื่อมต่อเซิร์ฟเวอร์จริงเดียวกันในแต่ละใหม่
รุ่น. หากผู้ใช้เลือกการฟื้นฟูแบบเต็ม แม้แต่หน้าต่างระดับบนสุดและ
การเชื่อมต่อกับเซิร์ฟเวอร์จริงจะถูกสร้างขึ้นใหม่สำหรับแต่ละรุ่นของเซิร์ฟเวอร์
ระดับ เชือก
ตัวเลือกนี้ระบุคลาสภาพเริ่มต้นของเซิร์ฟเวอร์ที่ซ้อนกัน มันคล้ายกัน
ไป -ซีซี ตัวเลือกจากชุดตัวเลือกมาตรฐาน ยกเว้นว่าจะยอมรับ a
สตริงแทนที่จะเป็นตัวเลขสำหรับข้อกำหนดคลาสวิชวล NS เชือก จะต้องเป็น
หนึ่งในหกค่าต่อไปนี้: คงสีเทา, โทนสีเทา, สีคงที่, PseudoColor,
สีที่แท้จริง,หรือ ไดเรคคัลเลอร์. ถ้าทั้ง ระดับ และ -ซีซี มีการระบุตัวเลือก the
ตัวอย่างสุดท้ายของตัวเลือกใดตัวเลือกหนึ่งมีความสำคัญกว่า คลาสของวิชวลเริ่มต้น
ของเซิร์ฟเวอร์ที่ซ้อนกันไม่จำเป็นต้องเหมือนกับคลาสของวิชวลเริ่มต้นของ
เซิร์ฟเวอร์จริง แต่เซิร์ฟเวอร์จริงต้องรองรับ ใช้ xdpyinfo(1) ถึง
รับรายการคลาสภาพที่รองรับบนเซิร์ฟเวอร์จริงก่อนเริ่ม เอ็กซ์เนส.
หากผู้ใช้เลือกคลาสคงที่ สีทั้งหมดในแมปสีเริ่มต้นจะเป็น
จัดสรรล่วงหน้า หากผู้ใช้เลือกคลาสไดนามิก ให้สีในแมปสีเริ่มต้น
จะมีให้สำหรับลูกค้าแต่ละรายสำหรับการจัดสรร
-ความลึก int
ตัวเลือกนี้ระบุความลึกของภาพเริ่มต้นของเซิร์ฟเวอร์ที่ซ้อนกัน ความลึกของ
ภาพเริ่มต้นของเซิร์ฟเวอร์ที่ซ้อนกันไม่จำเป็นต้องเหมือนกับความลึกของ
ภาพเริ่มต้นของเซิร์ฟเวอร์จริง แต่ต้องได้รับการสนับสนุนจากเซิร์ฟเวอร์จริง
ใช้ xdpyinfo(1) เพื่อรับรายการความลึกของภาพที่รองรับบนเซิร์ฟเวอร์จริง
ก่อนที่จะเริ่ม เอ็กซ์เนส.
-สสส ตัวเลือกนี้บอก เอ็กซ์เนส เพื่อใช้โปรแกรมรักษาหน้าจอซอฟต์แวร์ โดยค่าเริ่มต้น, เอ็กซ์เนส จะ
ใช้โปรแกรมรักษาหน้าจอที่สอดคล้องกับโปรแกรมรักษาหน้าจอฮาร์ดแวร์ในจริง
เซิร์ฟเวอร์ แน่นอน แม้แต่โปรแกรมรักษาหน้าจอนี้ก็สร้างด้วยซอฟต์แวร์ตั้งแต่ เอ็กซ์เนส ทำ
ไม่ได้ควบคุมฮาร์ดแวร์จริงใด ๆ อย่างไรก็ตาม จะถือว่าเป็นโปรแกรมรักษาหน้าจอฮาร์ดแวร์
ภายในรหัสเซิร์ฟเวอร์ตัวอย่าง
-เรขาคณิต WxH+X+Y
ตัวเลือกนี้ระบุพารามิเตอร์เรขาคณิตสำหรับระดับบนสุด เอ็กซ์เนส หน้าต่าง. ดู
“ข้อมูลจำเพาะทางเรขาคณิต” ใน X(7) สำหรับการอภิปรายเกี่ยวกับรูปแบบของตัวเลือกนี้ นี้
หน้าต่างสอดคล้องกับหน้าต่างรากของเซิร์ฟเวอร์ที่ซ้อนกัน ความกว้าง W และส่วนสูง
H ระบุด้วยตัวเลือกนี้จะเป็นความกว้างและความสูงสูงสุดของแต่ละระดับบนสุด
เอ็กซ์เนส หน้าต่าง เอ็กซ์เนส จะอนุญาตให้ผู้ใช้ทำให้หน้าต่างระดับบนสุดเล็กลง แต่
จะไม่เปลี่ยนขนาดของหน้าต่างรูทเซิร์ฟเวอร์ที่ซ้อนกัน เอ็กซ์เนส ทำ
ยังไม่รองรับส่วนขยาย RANDR สำหรับการปรับขนาด การหมุน และการสะท้อนของ
หน้าต่างราก หากไม่ได้ระบุตัวเลือกนี้ เอ็กซ์เนส จะเลือก W และ H ที่จะ
3/4ths ของขนาดของหน้าต่างรูทของเซิร์ฟเวอร์จริง
-bw int
ตัวเลือกนี้ระบุความกว้างเส้นขอบของระดับบนสุด เอ็กซ์เนส หน้าต่าง. จำนวนเต็ม
พารามิเตอร์ int ต้องเป็นบวก ความกว้างของเส้นขอบเริ่มต้นคือ 1
-แยม เชือก
ตัวเลือกนี้ระบุชื่อระดับบนสุด เอ็กซ์เนส หน้าต่างเป็น เชือก.
ค่าเริ่มต้นคือชื่อโปรแกรม
-scrns int
ตัวเลือกนี้ระบุจำนวนหน้าจอที่จะสร้างในเซิร์ฟเวอร์ที่ซ้อนกัน สำหรับ
แต่ละหน้าจอ เอ็กซ์เนส จะสร้างหน้าต่างระดับบนสุดแยกต่างหาก แต่ละหน้าจอคือ
อ้างอิงโดยตัวเลขหลังจุดในข้อกำหนดชื่อที่แสดงของไคลเอ็นต์
ตัวอย่างเช่น xterm -แสดง : 1.1 จะเปิดและ xterm(1) ไคลเอนต์ในเซิร์ฟเวอร์ที่ซ้อนกัน
ด้วยหมายเลขที่แสดง :1 บนหน้าจอที่สอง มีจำนวนจำกัด
โดยค่าคงที่ฮาร์ดโค้ดในโค้ดตัวอย่างเซิร์ฟเวอร์ ซึ่งปกติคือ 3
-ติดตั้ง
ตัวเลือกนี้บอก เอ็กซ์เนส เพื่อทำการติดตั้ง color map ของตัวเองโดยข้าม real
ตัวจัดการหน้าต่าง เพื่อให้ทำงานได้อย่างถูกต้อง ผู้ใช้อาจจะต้อง
ออกจากตัวจัดการหน้าต่างจริงชั่วคราว โดยค่าเริ่มต้น, เอ็กซ์เนส จะเก็บรัง
หน้าต่างไคลเอนต์ที่ควรติดตั้งแมปสีในเซิร์ฟเวอร์จริงใน
WM_COLORMAP_WINDOWS คุณสมบัติระดับบนสุด เอ็กซ์เนส หน้าต่าง. ถ้าแมปสีนี้คือ
ประเภทภาพเดียวกันกับหน้าต่างรูทของเซิร์ฟเวอร์ที่ซ้อนกัน เอ็กซ์เนส จะ
เชื่อมโยงแผนที่สีนี้กับระดับบนสุด เอ็กซ์เนส หน้าต่างเช่นกัน เนื่องจากสิ่งนี้ไม่
ไม่จำเป็นต้องเป็นกรณี ผู้จัดการหน้าต่างควรดูที่ .เป็นหลัก
WM_COLORMAP_WINDOWS คุณสมบัติมากกว่าแผนที่สีที่เกี่ยวข้องกับด้านบน-
ระดับ เอ็กซ์เนส หน้าต่าง. น่าเสียดายที่ตัวจัดการหน้าต่างทำอย่างนั้นได้ไม่ค่อยดี
ดังนั้นตัวเลือกนี้อาจมีประโยชน์
-พ่อแม่ window_id
ตัวเลือกนี้บอก เอ็กซ์เนส ใช้ window_id เป็นหน้าต่างรูทแทนการสร้าง a
หน้าต่าง
ขยาย DESCRIPTION
เริ่มต้นขึ้น เอ็กซ์เนส ง่ายเหมือนการเริ่มต้น xclock(1) จากเทอร์มินัลอีมูเลเตอร์ ถ้า
ผู้ใช้ต้องการเรียกใช้ เอ็กซ์เนส บนเวิร์กสเตชันเดียวกันกับเซิร์ฟเวอร์จริงเป็นสิ่งสำคัญ
ว่าเซิร์ฟเวอร์ที่ซ้อนกันจะได้รับที่อยู่ซ็อกเก็ตการฟังของตัวเอง ดังนั้น หากมี
เซิร์ฟเวอร์ที่ทำงานอยู่บนเวิร์กสเตชันของผู้ใช้อยู่แล้ว เอ็กซ์เนส จะต้องเริ่มต้นด้วย
หมายเลขที่แสดงใหม่ เนื่องจากโดยปกติแล้วจะไม่มีเซิร์ฟเวอร์มากกว่าหนึ่งเครื่องที่ทำงานอยู่บน a
เวิร์กสเตชัน ระบุ 'เอ็กซ์เนส :1' บนบรรทัดคำสั่งจะเพียงพอสำหรับผู้ใช้ส่วนใหญ่
สำหรับแต่ละเซิร์ฟเวอร์ที่ทำงานบนเวิร์กสเตชัน หมายเลขที่แสดงจะต้องเพิ่มขึ้นโดย
หนึ่ง. ดังนั้นหากคุณต้องการเริ่มต้นใหม่ เอ็กซ์เนส, คุณจะต้องพิมพ์ 'เอ็กซ์เนส :2' บน
บรรทัดคำสั่ง.
ในการรันไคลเอนต์ในเซิร์ฟเวอร์ที่ซ้อนกัน แต่ละไคลเอนต์จะต้องได้รับหมายเลขที่แสดงเหมือนกัน
เป็นเซิร์ฟเวอร์ที่ซ้อนกัน ตัวอย่างเช่น, 'xterm -แสดง :1' จะเริ่มขึ้นและ xterm กระบวนการใน
เซิร์ฟเวอร์ที่ซ้อนกันครั้งแรกและ 'xterm -แสดง :2' จะเริ่ม xterm ในรังที่สอง
เซิร์ฟเวอร์จากตัวอย่างด้านบน ลูกค้าเพิ่มเติมสามารถเริ่มต้นได้จากสิ่งเหล่านี้ xtermใน
แต่ละเซิร์ฟเวอร์ที่ซ้อนกัน
เอ็กซ์เนส as a ไคลเอนต์
เอ็กซ์เนส ประพฤติและมองไปยังเซิร์ฟเวอร์จริงและไคลเอนต์จริงอื่น ๆ เป็นไคลเอนต์จริงอื่น
มันเป็นไคลเอนต์ที่ค่อนข้างเรียกร้อง แต่เนื่องจากเกือบทุกหน้าต่างหรือกราฟิกร้องขอจาก
ไคลเอนต์ที่ซ้อนกันจะส่งผลให้มีการร้องขอหน้าต่างหรือกราฟิกจาก เอ็กซ์เนส ไปยังเซิร์ฟเวอร์จริง
ดังนั้นจึงเป็นที่พึงประสงค์ว่า เอ็กซ์เนส และเซิร์ฟเวอร์จริงอยู่ในเครือข่ายท้องถิ่น หรือแม้แต่
ดีกว่าในเครื่องเดียวกัน เอ็กซ์เนส ถือว่าเซิร์ฟเวอร์จริงรองรับ SHAPE
ส่วนขยาย. ไม่มีทางที่จะปิดสมมติฐานนี้แบบไดนามิก เอ็กซ์เนส เป็นไปได้
คอมไพล์โดยไม่มีส่วนขยาย SHAPE ในตัว ซึ่งในกรณีนี้ เซิร์ฟเวอร์จริงไม่จำเป็น
สนับสนุนมัน การสนับสนุนการเลือกส่วนขยาย Dynamic SHAPE อาจได้รับการพิจารณาเพิ่มเติม
การพัฒนาของ เอ็กซ์เนส.
ตั้งแต่ เอ็กซ์เนส ไม่จำเป็นต้องใช้วิชวลเริ่มต้นเดียวกันกับเซิร์ฟเวอร์จริง ระดับบนสุด
หน้าต่างของ เอ็กซ์เนส ลูกค้ามักจะมีแผนที่สีของตัวเอง นี่หมายความว่าหน้าต่างอื่น ๆ '
สีจะไม่แสดงอย่างถูกต้องในขณะที่โฟกัสแป้นพิมพ์หรือตัวชี้อยู่ใน เอ็กซ์เนส
เว้นแต่เซิร์ฟเวอร์จริงจะรองรับแมปสีที่ติดตั้งไว้มากกว่าหนึ่งแม็พที่ใดก็ได้
เวลา. แผนที่สีที่เชื่อมโยงกับหน้าต่างด้านบนของ เอ็กซ์เนส ลูกค้าไม่จำเป็นต้องเป็น
แผนที่สีที่เหมาะสมที่เซิร์ฟเวอร์ที่ซ้อนกันต้องการติดตั้งในเซิร์ฟเวอร์จริง ใน
กรณีที่ไคลเอนต์ที่ซ้อนกันพยายามติดตั้งแมปสีของวิชวลที่แตกต่างจาก
ภาพเริ่มต้นของเซิร์ฟเวอร์ที่ซ้อนกัน เอ็กซ์เนส จะวางหน้าต่างด้านบนของไคลเอนต์ที่ซ้อนกันนี้
และหน้าต่างบนสุดอื่น ๆ ทั้งหมดของไคลเอนต์ที่ซ้อนกันซึ่งใช้แมปสีเดียวกันใน
WM_COLORMAP_WINDOWS คุณสมบัติระดับบนสุด เอ็กซ์เนส หน้าต่างบนเซิร์ฟเวอร์จริง ดังนั้นมัน
เป็นสิ่งสำคัญที่ตัวจัดการหน้าต่างจริงที่จัดการ เอ็กซ์เนส หน้าต่างระดับบนสุดมองไปที่
WM_COLORMAP_WINDOWS คุณสมบัติมากกว่าแผนที่สีที่เกี่ยวข้องกับระดับบนสุด
เอ็กซ์เนส หน้าต่าง. เนื่องจากตัวจัดการหน้าต่างส่วนใหญ่ยังไม่ได้ปรับใช้แบบแผนนี้
อย่างถูกต้อง เอ็กซ์เนส สามารถเลือกทำการติดตั้งแผนที่สีลงในเซิร์ฟเวอร์จริงได้โดยตรง
ข้ามตัวจัดการหน้าต่างจริง หากผู้ใช้เลือกตัวเลือกนี้ มักจะเป็น
จำเป็นต้องปิดการใช้งานตัวจัดการหน้าต่างจริงชั่วคราวเนื่องจากจะรบกวนการทำงานของ
เอ็กซ์เนส แบบแผนของการติดตั้งแผนที่สี
ขั้นตอนการควบคุมแป้นพิมพ์และตัวชี้ของเซิร์ฟเวอร์ที่ซ้อนกันเปลี่ยนแป้นพิมพ์และ
พารามิเตอร์ควบคุมตัวชี้ของเซิร์ฟเวอร์จริง ดังนั้นหลังจาก เอ็กซ์เนส เริ่มต้นขึ้นก็
จะเปลี่ยนการควบคุมแป้นพิมพ์และตัวชี้ของเซิร์ฟเวอร์จริงเป็นภายในของตัวเอง
ค่าเริ่มต้น
เอ็กซ์เนส as a เซิร์ฟเวอร์
เอ็กซ์เนส เนื่องจากเซิร์ฟเวอร์มีลักษณะเหมือนกับเซิร์ฟเวอร์จริงสำหรับไคลเอ็นต์ของตัวเอง สำหรับลูกค้าที่
ไม่มีทางบอกได้ว่าพวกเขากำลังทำงานบนเซิร์ฟเวอร์จริงหรือที่ซ้อนกัน
ดังกล่าวแล้ว, เอ็กซ์เนส เป็นเซิร์ฟเวอร์ที่ใช้งานง่ายมากเมื่อพูดถึงการปรับแต่ง
เอ็กซ์เนส จะรับอาร์กิวเมนต์บรรทัดคำสั่งจำนวนหนึ่งที่สามารถกำหนดค่าเริ่มต้นได้
ระดับการมองเห็นและความลึก จำนวนหน้าจอ ฯลฯ
ความซับซ้อนที่ชัดเจนเพียงอย่างเดียวจากมุมมองของผู้ใช้เกี่ยวกับการใช้ เอ็กซ์เนส เป็นเซิร์ฟเวอร์คือ
การเลือกแบบอักษร เอ็กซ์เนส จัดการแบบอักษรโดยโหลดในเครื่องแล้วส่ง
ชื่อฟอนต์ไปยังเซิร์ฟเวอร์จริงและขอให้โหลดฟอนต์นั้นจากระยะไกล แนวทางนี้
หลีกเลี่ยงการส่งบิตสัญลักษณ์ข้ามเครือข่ายสำหรับการดำเนินการข้อความทุกครั้ง
แม้ว่ามันจะเป็นข้อผิดพลาดจริงๆ ผลที่ตามมาของแนวทางนี้คือผู้ใช้จะมี
ต้องกังวลเกี่ยวกับเส้นทางแบบอักษรที่แตกต่างกันสองเส้นทาง — แบบโลคัลสำหรับเซิร์ฟเวอร์ที่ซ้อนกันและรีโมต
หนึ่งสำหรับเซิร์ฟเวอร์จริง — ตั้งแต่ เอ็กซ์เนส ไม่เผยแพร่เส้นทางแบบอักษรไปยังเซิร์ฟเวอร์จริง
สาเหตุเป็นเพราะเซิร์ฟเวอร์จริงและที่ซ้อนกันไม่จำเป็นต้องทำงานในไฟล์เดียวกัน
ระบบซึ่งทำให้ทั้งสองเส้นทางแบบอักษรเข้ากันไม่ได้ ดังนั้นหากมีฟอนต์ใน
เส้นทางแบบอักษรท้องถิ่นของเซิร์ฟเวอร์ที่ซ้อนกันไม่มีการรับประกันว่าแบบอักษรนี้มีอยู่ใน
เส้นทางแบบอักษรระยะไกลของเซิร์ฟเวอร์จริง NS xlsfonts(1) ไคลเอนต์ ถ้าทำงานบนซ้อนกัน
เซิร์ฟเวอร์จะแสดงรายการแบบอักษรในเส้นทางแบบอักษรภายในเครื่อง และหากเรียกใช้บนเซิร์ฟเวอร์จริง จะแสดงรายการ
แบบอักษรในเส้นทางแบบอักษรระยะไกล ก่อนที่ฟอนต์จะถูกเปิดโดย nested . ได้สำเร็จ
เซิร์ฟเวอร์จะต้องมีอยู่ในเส้นทางแบบอักษรท้องถิ่นและระยะไกล เป็นความรับผิดชอบของผู้ใช้
เพื่อให้แน่ใจว่าเป็นกรณีนี้
อนาคต ลู่ทาง
สร้างความต้องการแบบไดนามิกสำหรับส่วนขยาย SHAPE ในเซิร์ฟเวอร์จริง แทนที่จะเป็น
ต้องเรียบเรียงใหม่ เอ็กซ์เนส เพื่อเปิดและปิดข้อกำหนดนี้
บางทีควรจะมีตัวเลือกบรรทัดคำสั่งที่จะบอก เอ็กซ์เนส เพื่อสืบทอดแป้นพิมพ์และ
พารามิเตอร์ควบคุมตัวชี้จากเซิร์ฟเวอร์จริงแทนที่จะกำหนดพารามิเตอร์เอง
เอ็กซ์เนส ควรอ่านไฟล์อินพุตการปรับแต่งเพื่อให้มีอิสระมากยิ่งขึ้นและ
ความเรียบง่ายในการเลือกเลย์เอาต์ที่ต้องการ
ไม่มีการสนับสนุนสำหรับ backing store และบันทึกอันเดอร์ แต่สิ่งนี้ควรพิจารณาด้วย
การนำฟอนต์ไปใช้อย่างเหมาะสมควรย้ายไปที่ os ชั้น.
ใช้ Xnest ออนไลน์โดยใช้บริการ onworks.net