
Xbox Series आर्किटेक्चर में व्यक्तिगत शोध
| Field | Value |
|---|---|
| Date | मार्च 9-12, 2026 + जुलाई 7-?, 2026 |
| Hardware | Xbox Series S (कोडनेम: Lockhart) |
| OS Build | 26100.7010.amd64fre.xb_flt_2602ge.260212-1010 + 26100.8561.amd64fre.xb_flt_2606ge.260609-2200 |
| Access Method | Dev Mode + SSH + REST API + NTFS file share junction |
यह रिपोर्ट Xbox Series S की आंतरिक आर्किटेक्चर का स्थैतिक और गतिशील विश्लेषण है, जो पूरी तरह से Microsoft के आधिकारिक डेवलपर मोड इंफ्रास्ट्रक्चर के माध्यम से किया गया है। किसी भी एक्सप्लॉइट या नीति उल्लंघन का उपयोग नहीं किया गया; सभी पहुंच व्यक्तिगत डेवलपर प्रोग्राम की सीमाओं के भीतर थी।
इसमें गेमप्ले के लिए उपयोग किए जाने वाले उच्चतम स्तर के घटकों से लेकर निम्नतम स्तर के सिस्टम ड्राइवर घटकों तक के विवरण शामिल हैं। इनमें से अधिकांश विवरण Xbox One के लिए भी समान होने की उम्मीद है।
AI का उपयोग बड़े प्रारंभिक शोध (200 से अधिक विश्लेषण आउटपुट और 50 से अधिक बेतरतीब नोट्स) को जल्दी से लगातार प्रारूप में बदलने के लिए किया गया था। भविष्य के सभी संपादन हाथ से किए जाते हैं।
यदि आपको लगता है कि इसका कोई भी बिंदु अस्पष्ट, अल्प-प्रलेखित, या गलत है, तो बेझिझक मुझे DM करें, या यदि आपके पास मेरे प्रश्नों (धारा 12 में) के कोई उत्तर हैं, तो वह भी अच्छा रहेगा। GUIDs और अन्य सामान्य पैटर्न को प्री-कमिट हुक में हटा दिया जाता है, बस मामले में मैं कुछ ऐसा छोड़ दूं जो मेरे खाते की पहचान कराता हो।
मैं जिस पर काम कर रहा हूं उसका बहुत कुछ अनुमानों पर आधारित है, इसलिए यह शायद गलत हो सकता है, और जैसे-जैसे मुझे अधिक जानकारी मिलेगी और मैं अधिक बाइनरी देखूंगा, बदलता रहेगा।
जिन कारणों का आप अनुमान लगा सकते हैं, मैं किसी भी परिस्थिति में सीधे बाइनरी, डिसअसेम्बली आउटपुट, या Microsoft या उसकी सहायक कंपनियों की बौद्धिक संपदा (IP) मानी जाने वाली कोई भी चीज़ साझा नहीं करूंगा।
ERA = GameOS Partition
SRA = SystemOS Partition
HT = Kinect (possibly "Human Tracking"?)
Arden = Xbox Series X/S GPU Stack
NewBe = Arden shader compiler
Host OS द्वारा ड्राइवर प्रबंधन ज्ञात SRA/ERA मॉडल के बाहर मौजूद है, विश्वास मॉडल देखें (धारा 4.2, 17.5)। XVIO.SYS और XSraFlt.sys को हाइपरवाइजर (HostOS के माध्यम से) द्वारा Windows आरंभ होने से पहले सीधे लोड किया जाता है और ये सभी सुलभ वॉल्यूम से अनुपस्थित होते हैं। पूर्ण कर्नेल एक्सेस के तहत भी इनके साथ छेड़छाड़ नहीं की जा सकती, जो प्राथमिक सुरक्षा सीमा है।
HVCI जानबूझकर अक्षम किया गया है (धारा 18)। IsSecureKernelRunning = 0x0 पुष्टि करता है कि Secure Kernel (VTL1) नहीं चल रहा है। कोड अखंडता केवल लोड-टाइम पर है, जिससे बाइनरी मैप होने के बाद TOCTOU विंडो बचती है। यह एक सोचा-समझा प्रदर्शन समझौता है; सुरक्षा सीमा हाइपरवाइजर विभाजन है, विभाजन के भीतर मेमोरी सुरक्षा नहीं।
NTFS जंक्शन पूरे SystemOS फाइलसिस्टम को नेटवर्क पर उजागर करता है (धारा 1.2)। SSH शेल से एक एकल mklink /J कमांड C:\ या किसी भी अन्य चीज़ को Device Portal फाइल शेयर में मैप कर देता है, जिससे डेव मोड PIN के अलावा किसी अतिरिक्त प्रमाणीकरण के बिना हर सिस्टम बाइनरी दूरस्थ रूप से पठनीय हो जाती है।
क्रॉस-पार्टीशन आर्किटेक्चर लगभग पूरी तरह से मैप किया जा चुका है (धारा 4, 14, 26-28)। ERA गेम पार्टीशन SystemOS के साथ विशेष रूप से हाइपरवाइजर-मध्यस्थ चैनलों के माध्यम से संवाद करता है: I/O के लिए XVIO रिंग बफर, साझा मेमोरी के लिए GPA अनुवाद, IPC के लिए HvSocket, और एक पैरेंटिंग "Host OS" द्वारा दी गई शून्य-प्रतिलिपि फ्रेमबफर डिलीवरी के लिए ALPC पोर्ट सेक्शन।
Deploy:\ जंक्शन स्थानीय पहुंच प्रतिबंधों को दरकिनार कर देता है (धारा 25)। Windows Update वॉल्यूम केवल नेटवर्क शेयर (S:\Deployment\SoftwareDistribution\) पर सुलभ है, कहीं किसी विसंगति के कारण (शायद xrfssvc.exe?)।
अधिकांश बाइनरी में केवल विवरण स्ट्रिंग होते हैं, मुझे आज तक यह नहीं पता था क्योंकि मैं कंसोल से वास्तविक कनेक्शन के अलावा Windows का उपयोग किसी और चीज़ के लिए नहीं कर रहा था। अक्सर यह उबाऊ होता है (जैसे XVUH, XVMCTRL) लेकिन कभी-कभी यह बहुत वर्णनात्मक होता है (जैसे Durango Virtual XVNC Bus Driver, Xbox Remote File System Service)।
सभी परीक्षण एक ही रिटेल Xbox Series S यूनिट पर डेवलपर मोड में किए गए। परिणाम कई बिल्ड को दर्शाते हैं, हालांकि मैं अंततः बिल्डों की तुलना करूंगा और उसे लिखूंगा। परिणाम हार्डवेयर संशोधनों (Series X, Xbox One) और फर्मवेयर संस्करणों के अनुसार भिन्न हो सकते हैं। कई कर्नेल-स्तरीय सतहों तक नहीं पहुंचा जा सका: लाइव कर्नेल डंप NoKernelDumps प्रतिबंध द्वारा अवरुद्ध हैं, और xvmctrl.sys IOCTL सतह पूरी तरह से गणना नहीं की गई थी। खुले प्रश्न धारा 12 में सूचीबद्ध हैं।
पहुंच अप्रलेखित (आधिकारिक रूप से, लेकिन समुदाय दस्तावेज़ मौजूद हैं) Dev Mode SSH इंटरफ़ेस के माध्यम से स्थापित की गई थी। NTFS जंक्शन तकनीक (धारा 1.2) ने D:\DevelopmentFiles स्क्रैच स्पेस से पढ़ने की पहुंच को पूर्ण C:\ सिस्टम वॉल्यूम और सभी अतिरिक्त अक्षर वॉल्यूम तक बढ़ा दिया। सभी विश्लेषण केवल-पठनीय थे; कोई सिस्टम सेटिंग्स संशोधित नहीं की गईं (WdConfig.exe set उपयोग नहीं किया गया)। Xbox SSH शेल के माध्यम से सीधे मानक x86_64 Windows कंसोल बाइनरी ( /MT के साथ संकलित) चला सकता है, जिसका उपयोग विश्लेषण उपकरण स्थानीय रूप से चलाने के लिए किया गया था।
कर्नेल डंप उपलब्ध नहीं थे: NoKernelDumps Device Portal प्रतिबंध उन्हें रिटेल डेव मोड पर अवरुद्ध करता है। यूज़र-मोड लाइव प्रोसेस डंप उपलब्ध थे और जहां प्रासंगिक थे, उपयोग किए गए।
Xbox Dev Mode Visual Studio का समर्थन करता है, यह SSH का उपयोग करता है:
DevToolsUserhttps://XBOX:11443 पर Device Portal D:\DevelopmentFiles के लिए एक छिपा हुआ NTFS फाइल शेयर उजागर करता है। SSH शेल से:```batch
mklink /J D:\DevelopmentFiles\C C:\
यह डेवलपर स्क्रैच स्पेस से सिस्टम C: ड्राइव रूट तक एक जंक्शन पॉइंट बनाता है, जिससे पूरा SystemOS फाइलसिस्टम एक पठनीय नेटवर्क शेयर के रूप में उजागर हो जाता है:
\\XBOX\DevelopmentFiles\C
यह `dumpbin` जैसे टूल्स को पीसी से सीधे नेटवर्क पर Xbox सिस्टम बाइनरी के विरुद्ध चलाने की अनुमति देता है।
---
## 2. OS पहचान
| फ़ील्ड | मान |
|--------------------|-------------------|
| उत्पाद नाम | Xbox Series S |
| OS संस्करण | SystemOS |
| Windows NT संस्करण | 10.0 |
| बिल्ड नंबर | 26100 |
| बिल्ड स्ट्रिंग | `26100.8561.amd64fre.xb_flt_2606ge.260609-2200` |
| LCUVer | `10.0.26100.8536` |
| ब्रांच | `xb_flt_2602ge` |
| बिल्ड दिनांक | जून 09, 2026 |
| आर्किटेक्चर | x64 |
| UEFI सिक्योर बूट | `NotCapable` |
| कंसोल कोडनेम | Lockhart |
| कंसोल मोड | Default |
| सैंडबॉक्स ID | `XDKS.1` |
OS स्वयं को **SystemOS** के रूप में पहचानता है, Windows के रूप में नहीं। बिल्ड ब्रांच `xb_flt_2602ge` Windows कोडबेस का एक अलग Xbox "फोर्क" प्रतीत होता है, जो अभी भी Windows 11 से काफी मिलता-जुलता है। कुछ Windows सिस्टम बाइनरी अपने डेस्कटॉप समकक्षों के बिट-दर-बिट समान हैं, उसी MSVC टूलचेन के साथ बनाई गई हैं, संभवतः उसी UUP पैकेजों से उत्पन्न हुई हैं। यह अस्पष्ट "Host OS" से अलग है।
### 2.1 रजिस्ट्री पहचान
कई `CurrentVersion` फ़ील्ड जानबूझकर फ़्रीज़ कर दी गई हैं, डेस्कटॉप Windows के समान (इस मामले में Xbox One शीर्षकों के साथ संगतता के लिए):
| कुंजी | मान | नोट्स |
|-----|-------|-------|
| `CurrentVersion` | `6.3` | आंतरिक रूप से Windows 8.1 के रूप में रिपोर्ट करता है, संगतता के लिए |
| `BuildGUID` | | शून्य/साफ़ किया गया |
| `InstallDate` | `0` | कोई इंस्टॉल टाइमस्टैम्प नहीं |
| `EditionID` | `SystemOS` | कभी अपडेट नहीं होता |
| `ReleaseId` | `2009` | Windows 10 20H2 युग पर फ़्रीज़; कभी बढ़ाया नहीं गया |
---
## 3. वॉल्यूम लेआउट
कंसोल 13 ड्राइव अक्षर उजागर करता है, जिनमें से अधिकांश [Xbox One की तरह, पूरी तरह से वर्चुअल माने जाते हैं](https://xboxoneresearch.github.io/wiki/operating-system/xbox-operating-system/)
| ड्राइव | लेबल | सामग्री | नोट्स |
|-------|-------|----------|-------|
| `C:` | System Boot | Windows OS फ़ाइलें | मानक SystemOS पार्टीशन |
| `D:` | *(कोई नहीं)* | `DevelopmentFiles\` | डेव मोड स्क्रैच स्पेस |
| `G:` | *(कोई नहीं)* | `GameDVR_VideoBuffer` (272MB), `GameDVR_AudioBuffer` (16MB), `GameDVR_AudioBuffer_SysLoopback` (3MB) | रॉ सर्कुलर कैप्चर बफर, ERA और SystemOS के बीच साझा मेमोरी |
| `J:` | Sys Tools | XTF टूलचेन, ड्राइवर, QuickActions | सेक्शन 5 देखें |
| `M:` | Misc | लाइब्रेरी और ड्राइवरों के लिए कंसोल-विशिष्ट NTFS ओवरले शामिल हैं | सिस्टम OS पार्टीशन? |
| `N:` | *(कोई नहीं)* | `BlackBox\`, `EtwPlus\`, `CMS\`, `errorstrings\`, `usersettings\` | डायग्नोस्टिक्स और टेलीमेट्री वॉल्यूम, सेक्शन 3.2 देखें |
| `Q:` | *(कोई नहीं)* | `Users\DevToolsUser\` | उपयोगकर्ता होम डायरेक्टरी |
| `S:` | *(कोई नहीं)* | `apps\`, `Clip\`, `Deployment\`, `Prefetch\`, `Microsoft\`, `ProgramData\` | संभवतः Host OS वॉल्यूम (डिफ़ॉल्ट ऐप्स और अन्य संसाधन भी शामिल हैं) |
| `T:` | *(कोई नहीं)* | `GameDVR\`, `Update\`, Harddisk16 के जंक्शन | GameDVR मेटाडेटा + अपडेट पाइपलाइन |
| `U:` | *(कोई नहीं)* | `ShellState\`, `BackCompatLicenses\`, `UserDataCache\` | शेल और उपयोगकर्ता स्थिति |
| `V:` | *(कोई नहीं)* | *(खाली)* | अज्ञात उद्देश्य |
| `X:` | SystemAux | `Apps\`, `Catalog000.bin` (2.3MB) | सिस्टम ऐप बाइनरी: 63 ऐप्स जिनमें `AdsLauncher`, `Xbox.DiscordComponent`, `Xbox.SingleUserProxy`, `Xbox.NTSCaptivePortal`, `Xbox.Xmap`, `Xbox.XboxIDP` शामिल हैं, सेक्शन 3.3 देखें |
| `Y:` | SystemAuxF | `Apps\`, `Catalog000.bin` (6.5MB) | द्वितीयक सिस्टम ऐप बाइनरी |
इसके अतिरिक्त, `\\.\HarddiskVolume10` बिना किसी ड्राइव अक्षर असाइनमेंट के मौजूद है। एक छिपा हुआ WER (Windows Error Reporting) वॉल्यूम है जिसमें `CrashDumps\`, `ReportArchive\`, `ReportQueue\`, और `Temp\` शामिल हैं। कम से कम **18 भौतिक डिस्क डिवाइस ऑब्जेक्ट मौजूद हैं** (`PhysicalDrive0` से `PhysicalDrive17` तक), सभी कर्नेल ऑब्जेक्ट के रूप में मौजूद हैं लेकिन यूजरस्पेस से रॉ स्तर पर पहुंच योग्य नहीं हैं। `HarddiskVolume16` और `HarddiskVolume18` वास्तविक सुलभ वॉल्यूम के रूप में मौजूद हैं लेकिन `DevToolsUser` से अवरुद्ध हैं।
### 3.1 छिपे हुए कर्नेल डिवाइस पथ
निम्नलिखित पथ कर्नेल डिवाइस ऑब्जेक्ट के रूप में मौजूद हैं लेकिन यूजरस्पेस से (सामान्य रूप से) पहुंच योग्य नहीं हैं:
- `\??\Deploy:\` Xbox अपडेट/डिप्लॉयमेंट पाइपलाइन वॉल्यूम (नेटवर्क शेयर पर जंक्शन के माध्यम से `S:\Deployment\` पर सुलभ)
### 3.2 N:\ डायग्नोस्टिक्स वॉल्यूम
`N:\` पर कई डायरेक्टरी कर्नेल स्तर पर एक फाइलसिस्टम फ़िल्टर ड्राइवर द्वारा सक्रिय रूप से छिपाई गई हैं क्योंकि वे सभी यूजरस्पेस टूल्स को खाली दिखाई देती हैं, लेकिन रनटाइम पर लिखी जाती हैं:
| पथ | स्थिति | नोट्स |
|------|--------|-------|
| `N:\EtwPlus\` | **कर्नेल-छिपा** | सामग्री फाइलसिस्टम फ़िल्टर ड्राइवर द्वारा छिपाई गई |
| `N:\BlackBox\` | सुलभ | Xbox-विशिष्ट ETL क्रैश रिपोर्ट टेलीमेट्री डेटा शामिल है |
| `N:\errorstrings\en-US.json` | सुलभ | पूर्ण Xbox एरर स्ट्रिंग डेटाबेस में 797 प्रविष्टियाँ हैं, सेक्शन 3.4 देखें |
| `N:\usersettings\18\public\` | सुलभ | फुल-क्वालिटी गेमरपिक बिना एक्सटेंशन वाली PNG के रूप में संग्रहीत (1080×1080 RGBA, मानक PNG प्रारूप) |
`N:\usersettings\18\public\` `AppDisplayPic` और `GameDisplayPic` दोनों को बिना एक्सटेंशन वाली फ़ाइलों के रूप में संग्रहीत करता है। SHA256 हैशिंग पुष्टि करती है कि वे बाइट-दर-बाइट समान हैं, ऐप डिस्प्ले पिक्चर और गेमरपिक एक ही फ़ाइल है जो दो पथों पर लिखी गई है।
### 3.3 X:\ SystemAux
`X:\ht\versions\` में एक सक्रिय Kinect विज़न स्टैक है जिसमें **तीन समवर्ती संस्करण** साइड-बाय-साइड स्थापित हैं (1.0.0, 1.0.1, 1.0.2), कुल 119MB। ये क्रमशः 1.67MB->1.70MB->1.85MB संस्करण वाले `vvtechs.dll` बिल्ड के अनुरूप हैं।
**बॉडी ट्रैकिंग ML मॉडल** (प्रति संस्करण डायरेक्टरी):
| फ़ाइल | आकार | उद्देश्य |
|------|------|---------|
| `exemplardb.xmplr` | 36.7MB | फुल बॉडी पोज़ एक्सेम्पलर डेटाबेस |
| `FernsModel.bin` | 932KB | डेप्थ कीपॉइंट डिटेक्टर (रैंडम फ़र्न्स क्लासिफायर) |
| `HeadPosition.mshdf` | 262–393KB | हेड जॉइंट एस्टीमेटर (संस्करण के अनुसार भिन्न) |
| `LSVMGripReleaseRight.gbd` | 7.5KB | लेटेंट SVM ग्रिप/रिलीज़ क्लासिफायर, दायां हाथ |
**चेहरा ट्रैकिंग ML मॉडल** (सिस्टम-व्यापी, `C:\Windows\System32\ht\`):
| फ़ाइल | आकार | उद्देश्य |
|------|------|---------|
| `FaceDetector.bin` | 3.0MB | फ्रेम में चेहरे ढूँढें |
| `FaceRecognition.bin` | 3.4MB | डेप्थ/IR पहचान पहचान |
| `FaceRecognition_Color.bin` | 5.9MB | कलर-चैनल पहचान पहचान |
| `ExpressionRandomForest.model` | 150KB | भावना क्लासिफायर |
| `EyeLeftRandomForest.model` | 55KB | बायीं आंख की स्थिति |
| `EyeRightRandomForest.model` | 65KB | दायीं आंख की स्थिति |
| `LookingAwayRandomForest.model` | 42KB | टकटकी/ध्यान का पता लगाना |
| `MouthOpenRandomForest.model` | 58KB | मुंह खुली स्थिति |
| `MouthMovedRandomForest.model` | 35KB | होंठों की हरकत |
| `FacialHairIRRandomForest.model` | 126KB | चेहरे के बाल (केवल IR सेंसर) |
| `GlassesIRRandomForest.model` | 206KB | चश्मे का पता लगाना (केवल IR सेंसर) |
सभी चेहरे की विशेषता क्लासिफायर **रैंडम फ़ॉरेस्ट** मॉडल हैं। आउटपुट में पहचान, अभिव्यक्ति, टकटकी, होंठ की स्थिति और उपस्थिति विशेषताएँ शामिल हैं।
स्टैक में `vvtechs.dll` एक एकल फ़ंक्शन निर्यात करता है: `NuiVisionCreateFactory`। यह `EtwPlus.dll` और `D3D11` आयात करता है, जो पुष्टि करता है कि Kinect विज़न पाइपलाइन GPU पर चलती है और Xbox-विशिष्ट टेलीमेट्री पथ का उपयोग करती है। यह बिना किसी भौतिक Kinect जुड़े हार्डवेयर पर सक्रिय है (सेक्शन 6 में `KinectSensorEnabled=true` और सेक्शन 33 में पूर्ण `nuiservice.exe` पाइपलाइन भी देखें)।
### 3.4 N:\errorstrings\en-US.json एरर कोड डेटाबेस
797 Xbox एरर स्ट्रिंग प्रविष्टियाँ। सुरक्षा या आर्किटेक्चरल प्रासंगिकता वाले उल्लेखनीय कोड:
| एरर कोड | स्ट्रिंग | नोट्स |
|------------|-----------------|-------|
| `0x887E0002` | D3D12.X रनटाइम/ड्राइवर बेमेल | पुष्टि करता है कि D3D12.X एक Xbox-विशिष्ट D3D12 वेरिएंट है, सामान्य D3D12 नहीं |
| `0x80A40406` | डेव मोड में बेहतर Microsoft टेलीमेट्री सक्षम | डेव मोड स्पष्ट रूप से कंसोल को उन्नत टेलीमेट्री संग्रह में ऑप्ट-इन करता है |
---
## 4. हाइपरवाइज़र आर्किटेक्चर
Xbox दो पार्टीशन चलाने वाला एक कस्टम Hyper-V आधारित हाइपरवाइज़र उपयोग करता है:
- **SystemOS** SRA पार्टीशन
- **ERA पार्टीशन** GameOS / Title OS निष्पादन वातावरण
### 4.1 ड्राइवर स्टैक
User space: xpal.dll
↓
Kernel: xpalk.dll
↓
xvmctrl.sys (364KB)
↓
Hypervisor: XVIO.SYS
### 4.2 मुख्य हाइपरवाइज़र ड्राइवर
| ड्राइवर | आकार | उद्देश्य |
|-------------------|---------|----------------------------------------------------------------------|
| `xvmctrl.sys` | 364KB | VM नियंत्रण, मुख्य हाइपरवाइज़र इंटरफ़ेस, IOCTL सतह |
| `XVIO.SYS` | अज्ञात | Xbox वर्चुअल I/O, प्रत्यक्ष हाइपरवाइज़र ABI (SystemOS फाइलसिस्टम पर नहीं) |
| `xvioc.sys` | अज्ञात | XVIO क्लाइंट, XVIO के लिए SystemOS-पक्ष इंटरफ़ेस |
| `xvbus.sys` | 73KB | वर्चुअल बस रूट + HvSocket XVIO प्रदाता |
| `hvsocket.sys` | 185KB | Hyper-V सॉकेट कार्यान्वयन |
| `VMNP.SYS` | 106KB | नाम "NPFS ड्राइवर" है, इम्पर्सनेशन भी संभालता है। |
| `Xrfs.sys` | 135KB | Xbox फाइलसिस्टम ड्राइवर |
| `XRmnt.sys` | 49KB | Xbox माउंट ड्राइवर |
| `XRo.sys` | 95KB | Xbox रीडओनली फ़िल्टर |
| `VerifierExt.sys` | 274KB | ड्राइवर वेरिफायर एक्सटेंशन |
**महत्वपूर्ण निष्कर्ष:** `XVIO.SYS` और `xpalk.dll` के **कोई रजिस्ट्री सेवा प्रविष्टियाँ नहीं हैं** और वे **SystemOS फाइलसिस्टम से अनुपस्थित हैं**। वे संभवतः SystemOS शुरू होने से पहले Host OS द्वारा लोड किए जाते हैं, स्थानीय ड्राइवर मॉडल से पूरी तरह बाहर। यह वास्तविक सुरक्षा तंत्र है; पूर्ण SystemOS कर्नेल एक्सेस के साथ भी, इन घटकों के साथ छेड़छाड़ नहीं की जा सकती।
### 4.3 XVIO API सतह (आयातों से पुनर्निर्मित)
XVIO पर जानकारी [यहाँ पाई जा सकती है](https://xboxoneresearch.github.io/wiki/development/xvio/xvio-overview/), हालाँकि मैं पुष्टि नहीं कर सकता कि Xbox One के बाद से चीजें नहीं बदली हैं।
`xvmctrl.sys`, `xviomonc.sys`, और `srakmd_arden.sys` से `XVIO.SYS` के विरुद्ध आयात:
XvioInitialize / XvioCleanup
XvioCreateEvent
XvioPostMessage
XvioGetCurrentPartitionId (सक्रिय पार्टीशन की पहचान करता है, xviomonc से)
XvioGetReservedMemory (हाइपरवाइज़र carve-out RAM एक्सेस, srakmd_arden से)
XvioRegisterGpaMdl / XvioUnregisterGpa (Guest Physical Address मैपिंग)
XvioSfrMapPages / XvioSfrUnmapPages (Shared Frame Region, क्रॉस-पार्टीशन GPU मेमोरी)
XvioSfrCounterGet / XvioSfrPerfCounterSet
XvioSfrReadEvent
XvioSetFocus (पार्टीशनों के बीच इनपुट फ़ोकस स्विच करता है)
XvioSetSystemTime
XvioSaveProvidersState / XvioRestoreProvidersState
XvioPerfMonitoringEnabled
XvioCreateRingBuffer / XvioDestroyRingBuffer
XvioGetRingBufferContext
XvioReadRingBuffer / XvioReadRingBufferEx / XvioWriteRingBuffer
XvioAcquireRingBufferRundown / XvioReleaseRingBufferRundown
`XvioRegisterGpaMdl` और SFR फ़ंक्शन हाइपरवाइज़र मेमोरी साझाकरण तंत्र हैं, रॉ RAM और GPU फ्रेमबफर पेज पार्टीशन सीमा के पार मैप किए जाते हैं।
### 4.4 HvSocket क्रॉस-पार्टीशन सेवाएँ
`hvsocket.sys` क्रॉस-पार्टीशन सॉकेट संचार के लिए सेवाएँ उजागर करता है:
- `HvSocketGetPartitionConnections` / `HvSocketGetPartitionListeners` सक्रिय चैनलों की गणना करते हैं
- `HvSocketGetVmIdFromVmbusHandle` VMBus हैंडल रिज़ॉल्यूशन
- `HvSocketUpdateServiceTable` सभी क्रॉस-पार्टीशन सेवाओं का रजिस्ट्री
एक GUID-नामित DLL `[REDACTED]_hvsocket.dll` एक HvSocket सेवा प्रदाता पंजीकृत करता है। GUID को उस स्थिति में संपादित किया गया है जहाँ यह पहचान योग्य हो सकता है।
चार वाइल्डकार्ड HvSocket एंडपॉइंट GUID को SHA1 सेवा SID गणना के माध्यम से हल किया गया है, पूर्ण विवरण के लिए सेक्शन 20 देखें जिसमें DiagTrack, RpcSs, और EventLog क्रॉस-पार्टीशन चैनल शामिल हैं।
---
## 5. J:\ "Sys Tools" XTF / डेव वॉल्यूम
> **प्रभाव:** `J:\` वॉल्यूम हर रिटेल Xbox पर मौजूद है। डेवलपर मोड में, डेव मोड PIN से परे किसी अतिरिक्त प्रमाणीकरण के बिना पूर्ण XTF टूलचेन सुलभ है। इसमें रिमोट डीबगिंग, स्क्रीन स्ट्रीमिंग, PIX GPU प्रोफाइलिंग, और कंसोल नियंत्रण API शामिल हैं जो अंतिम-उपयोगकर्ता पहुंच के लिए अभिप्रेत नहीं हैं।
इस शोध का सबसे महत्वपूर्ण निष्कर्ष। `J:\` वॉल्यूम (लेबल "Sys Tools") में **Xbox Tools Framework (XTF)**, Microsoft का आंतरिक डेवलपर किट टूलचेन है, जो स्पष्ट रूप से हर रिटेल Xbox पर मौजूद है। पूर्ण गणना: वॉल्यूम में **132 फ़ाइलें, 52MB**।
### 5.1 XTF एक्सटेंशन रजिस्ट्री (`J:\tools\xtfextensions.txt`)
सभी 20 XTF एक्सटेंशन COM CLSID के साथ पंजीकृत हैं:
| DLL | CLSID |
|----------------------------|------------------|
| `XtfApplicationServer.dll` | `{10B16182-...}` |
| `XtfConsoleControl.dll` | `{5B45D0E0-...}` |
| `XtfConnectedStorage.dll` | `{9D610BBD-...}` |
| `XtfDebugMonitor.dll` | `{9141933C-...}` |
| `XtfDebugCaptureServer.dll` | `{F306F5C7-...}` |
| `XtfFileIO.dll` | `{8A8B4D4C-...}` |
| `XtfInput.dll` | `{7CC4D09B-...}` |
| `XtfPix.dll` | `{9BD151A3-...}` |
| `XtfGameStreaming.dll` | `{AA627F22-...}` |
| `XtfDiagInfo.dll` | `{FD21AC23-...}` |
| `XtfStressServer.dll` | `{6B5B0C75-...}` |
| `XtfSymbolProxyServer.dll` | `{69ABF3A1-...}` |
| `XtfPerf.dll` | `{F82AF734-...}` |
| `XtfRemoteRun.dll` | `{D77FE8B8-...}` |
| `XtfUser.dll` | `{2E302BAA-...}` |
| `XtfAuditioning.dll` | `{B91F5206-...}` |
| `XtfCleanup.dll` | `{9CF818E5-...}` |
| `XtfCredentialsServer.dll` | `{8582A384-...}` |
| `XtfEventServer.dll` | `{749FDEFA-...}` |
| `XtfUpdateT_s.dll` | `{DCDD4E77-...}` |
### 5.2 विज़ुअल स्टूडियो रिमोट डीबगर (`J:\tools\debugmon\`)
msvsmon.exe
vsdebugeng.dll (1.5MB)
vsdebugeng.impl.dll (1.6MB)
msdia120.dll
diagnosticsscripthost.dll
vsdebuglaunchnotify.exe
VS 2015 से VS 2022 तक के संस्करणित डीबग पेलोड (`debugmondev14payload` से `debugmondev16payload` तक)। **तीन समवर्ती विज़ुअल स्टूडियो रिमोट डीबगर पीढ़ियाँ मौजूद और पंजीकृत हैं: VS2015, VS2017, और VS2019** सभी एक ही रिटेल कंसोल फाइलसिस्टम पर सह-अस्तित्व में हैं।
### 5.3 अन्य उल्लेखनीय टूल
| बाइनरी | उद्देश्य |
|---|---|
| `agent-xbox.exe` (1.5MB) | मुख्य XTF एजेंट |
| `xtfrtservice.exe` (1.3MB) | XTF रनटाइम सेवा होस्ट |
| `xstudioserviceexe.exe` | Xbox स्टूडियो सेवा |
| `xperf.exe` | Xbox प्रदर्शन प्रोफाइलर, मौजूद और कार्यात्मक, हालाँकि **ETW कर्नेल ट्रेसिंग टूल की परवाह किए बिना पूरी तरह से अवरुद्ध है** (सेक्शन 5.5 देखें) |
| `videoserver.exe` (RTSP) | स्टैंडअलोन RTSP स्क्रीन स्ट्रीमिंग सर्वर |
| `wdapp.exe`, `wdconfig.exe` | वेव डीबगर / कॉन्फ़िगरेशन टूल |
| `wdcapture.exe` | स्क्रीनशॉट/वीडियो कैप्चर |
| `wdgamestream.exe` | गेम स्ट्रीमिंग नियंत्रण |
| `xboxnetapidiagsystem.exe` | Xbox Live नेटवर्क डायग्नोस्टिक्स |
| `xbtp.dll` (503KB) | Xbox ब्रॉडबैंड ट्रांसफर प्रोटोकॉल |
| `xraytool.exe` | Xbox कंसोल प्रदर्शन टूल (इस तथ्य को प्रकट करता है कि Host OS मौजूद है) |
| `xstudioclient.dll` | Xbox स्टूडियो क्लाइंट लाइब्रेरी |
| `unattendedsetuphelper.exe` | पूर्ण कंसोल प्रबंधन टूलकिट, सेक्शन 5.6 देखें |
### 5.4 QuickActions `.xboxunattend` प्रारूप
`J:\QuickActions\` में `.xboxunattend` प्रारूप में स्वचालन स्क्रिप्ट हैं। ये डिवाइस पोर्टल के माध्यम से ट्रिगर की जाने वाली सादे Windows बैच स्क्रिप्ट हैं। उपलब्ध क्रियाएँ:
- `Capture_Screenshot.xboxunattend` `wdcapture.exe screenshot` कॉल करता है
- `Capture_Video.xboxunattend`
- `Toggle_ConsoleMode.xboxunattend` `WdConfig.exe` के माध्यम से हार्डवेयर इम्यूलेशन मोड चक्रित करता है
- `Toggle_HDR.xboxunattend`
- `Toggle_Resolution.xboxunattend`
- `Launch_DevHome.xboxunattend` / `Launch_RetailHome.xboxunattend`
- `Suspend_Title.xboxunattend`
`Toggle_ConsoleMode.xboxunattend` `WdConfig.exe` को पारित प्रोफाइलिंग मोड पहचानकर्ताओं की पूरी सूची प्रकट करता है: `AnacondaProfiling`, `LockhartProfiling`, और **`Scarlett 40 GB`**।
### 5.5 xperf / WPR
`xperf.exe` और WPR पूरी तरह से मौजूद और कार्यात्मक हैं, जिसमें एक `NeuralProcessing` WPR प्रोफ़ाइल शामिल है। हालाँकि, सभी ETW कर्नेल ट्रेसिंग दो अलग-अलग एरर कोड द्वारा अवरुद्ध हैं:
| एरर कोड | अर्थ |
|------------|---------|
| `0x80070005` | `Access denied`, मानक Windows ACL अस्वीकृति |
| `0xc5585011` | `Xbox policy block`, **इस कोड के लिए कोई उपयोगकर्ता-सामना करने वाली एरर स्ट्रिंग मौजूद नहीं है** (`N:\errorstrings\en-US.json` में मौजूद नहीं) |
ETW प्रदाता गणना मानक ETW नेमस्पेस में **शून्य Xbox-विशिष्ट प्रदाता** दिखाती है। सभी Xbox टेलीमेट्री `Etx`-उपसर्ग वाले फ़ंक्शनों का उपयोग करके `EtwPlus.dll` के माध्यम से प्रवाहित होती है, जो मानक Windows ETW से पूरी तरह से अलग पाइपलाइन है (सेक्शन 19.3 देखें)।
### 5.6 unattendedsetuphelper.exe कंसोल प्रबंधन टूल
`unattendedsetuphelper.exe` एक कंसोल प्रबंधन निष्पादन योग्य है जो कवर करता है:
- फैक्ट्री रीसेट
- नेटवर्क-आधारित फर्मवेयर अपडेट
- टोस्ट/सूचना इंजेक्शन
- डिवाइस पोर्टल प्रबंधन
यह `.xboxunattend` स्क्रिप्टिंग (सेक्शन 5.4 में प्रलेखित QuickActions प्रारूप) के लिए रनटाइम इंजन के रूप में भी कार्य करता है।
---
## 6. WdConfig सेटिंग्स सतह
`J:\tools\WdConfig.exe` (बिल्ड `10.0.26100.7010`) पूर्ण कंसोल कॉन्फ़िगरेशन API उजागर करता है। उल्लेखनीय सेटिंग्स:
### डीबग श्रेणी
| सेटिंग | मान | नोट्स |
|---|---|---|
| `ConsoleType` | `Lockhart` | हार्डवेयर पहचानकर्ता |
| `ConsoleMode` | `Default` | `AnacondaProfiling`, `LockhartProfiling`, `Scarlett 40GB` |
| `EraGraphicsDriverMode` | `Title Configured` | विकल्प: `Retail`, `Instrumented`, `Validated`। SRA समकक्ष `SraGraphicsDriverMode = Retail` है, ERA और SRA अलग ड्राइवर मोड सेटिंग्स का उपयोग करते हैं |
| `EnableKernelDebugging` | `false` | कर्नेल डीबगर अटैचमेंट के लिए ERA क्रैश टियरडाउन को रोकता है |
| `EnablePixMemory` | `false` | Lockhart Profiling मोड में PIX के लिए अतिरिक्त 6048MB आरक्षित करता है |
| `CrashDumpType` | `None` | विकल्प: `Triage`, `Mini`, `Heap` |
| `TitlePerformanceOverlay` | `false` | चल रहे शीर्षकों पर रीयल-टाइम GPU/CPU HUD ओवरले |
| `ExtraTitleMemory` | `0` | Lockhart Profiling मोड पर अधिकतम 6048MB |
| `LastShutdownReason` | `Console crash` | रिबूट के बीच बना रहता है, अंतिम शटडाउन पर मेरा कंसोल क्रैश हो गया था |
| `KinectSensorEnabled` | `true` | **बिना किसी Kinect जुड़े हार्डवेयर पर true पर सेट**, हार्डवेयर उपस्थिति की परवाह किए बिना स्टैक प्रावधानित है |
### नेटवर्क श्रेणी
| सेटिंग | मान | नोट्स |
|---|---|---|
| `UseDebugNicForAllTraffic` | `false` | एक अलग डीबग NIC मौजूद है, जो रिटेल NIC से अलग है। |
### स्टोरेज श्रेणी
| सेटिंग | मान | नोट्स |
|---|---|---|
| `DevkitUseRetailConnectedStorage` | `false` | यदि सक्षम है, तो डेव मोड रिटेल कनेक्टेड स्टोरेज पार्टीशन का उपयोग करेगा। परीक्षण नहीं किया गया। |
| `RunFromPcDataCacheSizeInGB` | `100` | **Run-From-PC टाइटल कैश के लिए डिफ़ॉल्ट रूप से 100GB आरक्षित; लॉक किया गया है, उपयोगकर्ता द्वारा बदला नहीं जा सकता** |
### अनअटेंडेड श्रेणी
| सेटिंग | मान | नोट्स |
|---|---|---|
| `AllowUsbUnattendScript` | `true` | USB पर `.xboxunattend` स्क्रिप्ट स्वचालित रूप से चलती हैं |
| `RunUnattendScriptImmediately` | `false` | यदि true है, तो USB स्क्रिप्ट रद्दीकरण संकेत के बिना बूट पर चलती हैं |
### सुरक्षा नोट्स
**Microsoft खाता ईमेल प्लेनटेक्स्ट में संग्रहीत।** डेव मोड WdConfig स्टोर में लिंक किया गया Microsoft खाता ईमेल पता प्लेनटेक्स्ट में होता है। यह संभवतः SRA एक्सेस वाली किसी भी प्रक्रिया द्वारा पठनीय है।
---
## 7. XCRDAPI.dll Xbox सामग्री डिलीवरी API
`XCRDAPI.dll` Xbox प्लेटफ़ॉर्म का सामग्री प्रबंधन कर्नेल है। यह एक ही लाइब्रेरी में DirectStorage, प्रगतिशील इंस्टॉल, DRM, xCloud, और ब्लॉब स्टोरेज संभालता है।
### 7.1 DirectStorage
DStorageGetFactory
DStorageGetMappedControlPage
Xbox का DirectStorage कार्यान्वयन XCRDAPI में एम्बेडेड है, एक अलग SDK नहीं।
### 7.2 XVD जीवनचक्रXCrdOpenAdapter / XCrdCloseAdapter
XCrdMount / XCrdMountContentType / XCrdUnmount / XCrdUnmountEx
XCrdCreateXVD / XCrdDeleteXVD / XCrdResizeXVD / XCrdGrowDynamicXvd
XCrdSetEraLaunchMapping XVD को ERA पार्टीशन से प्री-लॉन्च पर संबद्ध करता है
XCrdUpdateXvc / XCrdUpdateXvcEx
XCrdDefragXvc / XCrdTrimXvc / XCrdTrimXvd
XCrdRepairXvc
### 7.3 प्रोग्रेसिव स्ट्रीमिंग इंस्टॉल
XCrdStreamingStart / XCrdStreamingStop
XCrdStreamingQueryActiveInstanceId
XCrdStreamingQueryInformation / InformationByPath / InformationEx
XCrdStreamingQueryRegionInformation / ByPath
XCrdStreamingQueryRegionSpecifiers / ByPath
XCrdStreamingQueueInsertRegion
XCrdStreamingQueueQueryRegionList / ByPath
XCrdStreamingAdjustStreamingFlags
XCrdStreamingQueryRegionIdByOffset
पूर्ण प्राथमिकता-कतारबद्ध प्रोग्रेसिव इंस्टॉल पाइपलाइन। रीजन गेम सामग्री के पता-योग्य खंड हैं।
### 7.4 XCloud एकीकरण
XCloudQueryFeatureBits
XCloudSetFeatureBits
xCloud स्ट्रीमिंग फीचर फ्लैग को लोकल सामग्री के समान API के माध्यम से नियंत्रित किया जाता है।
### 7.5 DRM / एटेस्टेशन
XCrdQueryAttestationBlob
XCrdQueryEncryptedInfo / XCrdQueryUnlockInfo
XCrdIsSideloadedKeyPresent
XCrdEnableSharedPls / XCrdSetExternalPlsMapping
### 7.6 स्टोरेज ब्लॉब सिस्टम
XCrdStorageCreateBlob / DeleteBlob / MoveBlob / CopyBlob
XCrdStorageReadBlob / ReadBlobEx / WriteBlob / WriteBlobEx
XCrdStorageQueryBlobAttributes
XCrdXBlobCreate / Delete / Copy
XCrdFindFirstBlob / FindNextBlob / FindCloseBlob
### 7.7 XVD ट्रांसफर पाइपलाइन
XCrdXvdXferInitialize / Uninitialize
XCrdXvdXferStart / Stop
XCrdXvdXferRead
XCrdXvdXferGetResult
### 7.8 पाथ सिस्टम
XCrdXasBuildPath / XasBuildPathEx / XasKeyQueryValue (XAS ऐप स्टोर पाथ)
XCrdXdsGetVolumeMapping / XdsSetVolumeMapping (XDS डिलीवरी सर्विस वॉल्यूम)
XCrdBuildPath / XCrdParsePath / XCrdUpdatePath
XCrdQueryDevicePath / QueryDevicePathByPath
XCrdSetFlatContentPath
---
## 8. xpal.dll Xbox प्लेटफ़ॉर्म एब्स्ट्रैक्शन लेयर (50 एक्सपोर्ट)
हार्डवेयर पहचान, क्षमताओं और पावर प्रबंधन के लिए पहले से अप्रलेखित API।
### हार्डवेयर पहचान
XpalGetConsoleCertificate हार्डवेयर प्रमाणपत्र
XpalGetConsoleIdCch कंसोल हार्डवेयर ID
XpalGetConsoleSerialNumberCch सीरियल नंबर
XpalGetSmcFirmwareId SMC फ़र्मवेयर संस्करण
XpalGetSouthBridgeType चिपसेट वैरिएंट
### जनरेशन / SKU पहचान
XpalIsGen8 Xbox One
XpalIsGen9 Series X/S
XpalGetGenerationType
XpalIsHyperV हाइपरवाइज़र सक्रिय
XpalIsExternalDevkit / XpalIsInternalDevkit
XpalGetVmType
XpalGetSystemType / XpalGetServerType / XpalGetConsoleMode
### क्षमता फ्लैग
XpalIsCapabilityEnabled
XpalIsCapabilityEnabledByVm
XpalIsFactorySettingEnabled
XpalGetFactorySettings
XpalGetCapabilities
XpalIsFeatureEnabled
### पावर प्रबंधन
XpalInitiateDump मांग पर क्रैश डंप ट्रिगर करें
XpalInitiatePowerStateToggle
XpalInitiateSystemShutdown
XpalSetWakeupTimer
XpalQueryPowerToggleSource
XpalIsInForcedCs / XpalIsTransitioningToConnectedStandby
XpalIsSilentBootMode
XpalNotifyForcedCsHeartbeat
XpalIsRebootRequested
XpalRefreshPowerChimeMode
### कॉन्फ़िगरेशन
XpalGetXConfig / XpalSetXConfig Xbox कॉन्फ़िग स्टोर (आधुनिक EEPROM समकक्ष)
XpalSetSystemTime
XpalSetInformation
XpalReportUem UEM (यूनिवर्सल एरर मैसेज) ट्रिगर करें
### ERA / टाइटल VM
XpalQueryTitleVmInfo
XpalWaitForTitleVmTermination
XpalBackgroundActivityRequest
---
## 9. eracontrol.exe ERA पार्टीशन लाइफसाइकिल मैनेजर
`C:\Windows\System32\eracontrol.exe` LocalSystem के रूप में चलता है (मैनुअल स्टार्ट) और संपूर्ण ERA गेम पार्टीशन लाइफसाइकिल का प्रबंधन करता है। पूर्ण इम्पोर्ट विश्लेषण Section 28 में है। मुख्य इम्पोर्ट का सारांश:
- `NtOpenPartition` सीधे Hyper-V ERA पार्टीशन हैंडल खोलता है
- `RtlSetProcessIsCritical` स्वयं को क्रिटिकल चिह्नित करता है (क्रैश होने पर सिस्टम BSOD हो जाता है)
- `XCRDAPI.dll` `XCrdSetEraLaunchMapping` के माध्यम से गेम XVD माउंट/अनमाउंट करता है
- `RIMAddInputObserver` / `RIMRemoveInputObserver` ERA तक रूटिंग के लिए रॉ कंट्रोलर इनपुट इंटरसेप्ट करता है
- `XblaInitialize` कंसोल Xbox Live ऑथ कॉन्टेक्स्ट बूटस्ट्रैप करता है
- `LogonUserExExW` ERA सत्र के लिए यूज़र लॉगऑन टोकन बनाता है
- `UMgrOpenProcessHandleForAccess` यूज़र मैनेजर प्रोसेस हैंडल एक्सेस
- `PsmQueryBackgroundActivationType` बैकग्राउंड एक्टिवेशन स्थिति
उसी निर्देशिका में यह भी पाया गया: `eraproxyapp.exe` (339KB), SystemOS-पक्षीय कंपोज़िटर और ERA तथा शेल के बीच IPC ब्रिज। पूर्ण इम्पोर्ट विश्लेषण Section 29 में है।
---
## 10. BlackBox ETL ट्रेस (N:\BlackBox\)
`N:\BlackBox\` निर्देशिका में लाइव ETW फ्लाइट रिकॉर्डर ट्रेस होते हैं। कैप्चर किए गए ट्रेस के विश्लेषण से:
**नोट:** Xbox ETL प्रारूप केवल 'tracerp' के साथ रिज़ॉल्व होगा
### आंतरिक सोर्स ट्री पाथ (डीबग इंस्ट्रूमेंटेशन में एम्बेडेड)
onecoreuap\xbox\xblauth\lib\authmanagerimpl.cpp
onecoreuap\xbox\xblauth\lib\authmanagertokens.cpp
onecoreuap\xbox\xblauth\lib\xstsauthorizer.cpp
onecoreuap\xbox\xblauth\util\httprequest.cpp
### Xbox Live ऑथ रिलाइंग पार्टियाँ
http://xdes.xboxlive.com/ Xbox डेव/इंजीनियरिंग सर्विसेज़
http://xboxlive.com मानक XBL
http://mp.microsoft.com/ Microsoft Passport (MSA)
http://instance.mgt.xboxlive.com इंस्टेंस/सत्र प्रबंधन
### कैप्चर किए गए क्रैश
1. **`XboxUI.exe` BEX64** डैशबोर्ड शेल में `XboxUI.Data.dll` के ऑफसेट `0x13eb0` पर स्टैक बफर ओवररन (`STATUS_STACK_BUFFER_OVERRUN`, `0xc0000409`) हुआ
2. **`MoAppHang`** पैकेज `REDACTED_GUID` के लिए UWP ऐप हैंग
---
## 11. अतिरिक्त उल्लेखनीय निष्कर्ष
### Xbox पर WSL मौजूद
`LxssManager` और `lxcore` सेवाएँ `LaunchProtected: 0x2` (प्रोटेक्टेड प्रोसेस) और `SeTcbPrivilege` के साथ मौजूद हैं। Xbox पर WSL OS-स्तरीय ट्रस्ट के साथ चलता है, और उपयोग के आधार पर यह लगभग निश्चित रूप से किसी चीज़ को पावर दे रहा है या कम से कम किसी छोटे तरीके से `Xbox.ConsoleXCloudPlayer` (xCloud गेम स्ट्रीमिंग क्लाइंट) से संबंधित है।
wsl.exe मौजूद है लेकिन **पठनीय** नहीं है।
### Xbox-विशेष System32 बाइनरीज़
मानक Windows में उपलब्ध न होने वाले उल्लेखनीय DLL:
- `XCRDAPI.dll` कंटेंट डिलीवरी (Section 7 में प्रलेखित)
- `XBBlackbox.dll` फ्लाइट रिकॉर्डर (Section 30 में प्रलेखित)
- `XBCastRecv.dll` Xbox Cast / Miracast रिसीवर (Section 30 में प्रलेखित)
- `XVMAudioServer.dll` क्रॉस-पार्टीशन VM ऑडियो सर्वर
- `Xbox.Shell.Api.dll` / `Xbox.Shell.OneStoreServices.dll` शेल API (Section 30 में प्रलेखित)
- `XboxCommandService.dll` कमांड/ऑटोमेशन
- `XboxUserSim.dll` UI टेस्ट ऑटोमेशन
- `xboxgipsynthetic.dll` / `xboxsynthetickm.dll` सिंथेटिक GIP वर्चुअल कंट्रोलर इंजेक्शन (Section 30 में प्रलेखित)
- `AppXDeploymentExtensions.xbox.dll` Xbox-विशिष्ट AppX डिप्लॉयमेंट
- `xvnapi.dll` Xbox वर्चुअल नेटवर्क API
- `xbsc_xs.dll` Xbox सीरीज़ शेडर कंपाइलर (Section 16.2 में प्रलेखित)
### मौजूद लेकिन प्रलेखित न किए गए सर्विसेज़
- `EraControlService` ERA पार्टीशन लाइफसाइकिल
- `XvdStreamSvc` (`xnetsharedservice.exe`) XVD स्ट्रीमिंग / प्रोग्रेसिव इंस्टॉल
- `XUpdMgr` Xbox अपडेट मैनेजर (किसी तरह Windows Update से अलग?)
- `XSraFlt` Xbox SRA फ़िल्टर ड्राइवर
- `Manufacturing Broker` फैक्ट्री प्रोविज़निंग सर्विस
- `TestSirepSvc` SIREP आंतरिक परीक्षण प्रोटोकॉल
- `GameCoreController` GDK गेम कोर कंट्रोलर सर्विस
- `ConnectedStorage` Xbox क्लाउड सेव सर्विस
- `VideoManagerService` वीडियो आउटपुट प्रबंधन
- `XBBlackbox` फ्लाइट रिकॉर्डर सर्विस
- `xbdiagservice` Xbox डायग्नोस्टिक्स सर्विस
- `XtfRtService` XTF रनटाइम सर्विस
सर्विस रजिस्ट्री में मौजूद पुष्टि किए गए अतिरिक्त लिगेसी/निम्न-स्तरीय ड्राइवर (Section 11.2 देखें):
- `Zurich` DVB वर्चुअल ड्राइवर
### `xvnc` / `xvncbus` Xbox वर्चुअल नेटवर्क कार्ड
`xvnc.sys` और `xvncbus.sys` एक **वर्चुअल NIC स्टैक** हैं, `xvnc` सर्विस एनम से पता चलता है:
ROOT\xvnc\0000 रूट/लूपबैक वर्चुअल NIC
{e720983a-...}\wifi\01
{e720983a-...}\wfd\01 वाई-फ़ाई डायरेक्ट
{e720983a-...}\wfd_role0\01
`xvncbus` एक WDF 1.15 बस ड्राइवर है जो फिजिकल वायरलेस एडेप्टर के ऊपर वर्चुअल NIC एन्यूमरेट करता है। ERA पार्टीशन नेटवर्क स्टैक तक सीधे एक्सेस नहीं करता, यह `NetXVmService` के माध्यम से संचार करता है, जो `xvnc` वर्चुअल NIC लेयर का स्वामी है। GUID `{e720983a-...}` Xbox वायरलेस एडेप्टर हार्डवेयर की पहचान करता है।
### `xviomonc.sys` XVIO मॉनिटर क्लाइंट
बूट-स्टार्ट ड्राइवर (`Start: 0x1`) जो डिस्प्ले पार्टीशन फोकस प्रबंधित करता है। इम्पोर्ट विश्लेषण:
XVIO.SYS: XvioInitialize, XvioCleanup, XvioPostMessage,
XvioSetFocus, XvioGetCurrentPartitionId - नया XVIO एक्सपोर्ट
VMNP.SYS: NpSetupVmImpersonation
xpalk.dll: XpalIsCapabilityEnabled
`xviomonc` फ्रेमबफर डेटा को **नहीं** संभालता, यह केवल सिग्नलिंग और फोकस प्रबंधन ड्राइवर है। `XvioSetFocus` स्विच करता है कि किस पार्टीशन के पास डिस्प्ले/इनपुट फोकस है; `XvioGetCurrentPartitionId` सक्रिय पार्टीशन की पहचान करता है। वास्तविक फ्रेम कैप्चर `srakmd_arden.sys` द्वारा संभाला जाता है।
`VMNP.SYS` से `NpSetupVmImpersonation` मॉनिटर ड्राइवर को पार्टीशन सीमा के पार ERA डिस्प्ले संसाधनों तक पहुँचते समय ERA पार्टीशन की सुरक्षा पहचान का प्रतिरूपण (impersonate) करने की अनुमति देता है।
### G:\ GameDVR बफ़र
G:\ पर तीन फ़ाइलें ERA और SystemOS के बीच साझा किए गए रॉ सर्कुलर मेमोरी-मैप्ड बफ़र हैं:
- `GameDVR_VideoBuffer` 272MB रोलिंग वीडियो कैप्चर
- `GameDVR_AudioBuffer` 16MB गेम ऑडियो
- `GameDVR_AudioBuffer_SysLoopback` 3MB सिस्टम/UI ऑडियो (अलग स्ट्रीम)
---
## 11.1 रजिस्ट्री निष्कर्ष
### केवल-डेवकिट K:\ ड्राइव संदर्भ
`HKLM\SOFTWARE\Microsoft\Durango\XTF` में एक हार्डकोडेड पाथ है:
K:\TDK\Tools\XtfJuno.dll
### `HKLM\SYSTEM\ResourcePolicyStore`
| टियर | मेमोरी बजट |
|------|--------------|
| `BackgroundSmall` | 40MB |
| `Background` | (मानक बैकग्राउंड) |
| `Balloon` | 5120MB |
CPU पॉलिसी टियर:
| पॉलिसी | CPU आवंटन |
|--------|---------------|
| `Paused` | 1% |
| `SoftCapLow` | 10% |
| `SoftCapFull` | 100% |
| `HardCap0` | 0% - पूरी तरह से फ्रोज़न |
**BeanHog पॉलिसी** (शायद फोरग्राउंड गेम प्रोसेस बजट?):
- मेमोरी: फोरग्राउंड टियर
- CPU: 100%
- `DoNotKill`: true
- प्राथमिकता: उच्चतम महत्व
---
## 11.2 Xbox One लिगेसी पुरातत्व
Xbox One युग के तीन ड्राइवर Series S की सर्विस रजिस्ट्री में जीवित हैं। दो अक्षम हैं; एक सक्रिय रूप से चल रहा है।
### `Zurich` TV ट्यूनर डिकोडर स्टैक
`zurichs.sys` Xbox One DVB वर्चुअल ड्राइवर है। स्थिति: **अक्षम**, लेकिन फिर भी पंजीकृत।
मुख्य निष्कर्ष: `zurichs.sys` `XVIO.SYS` रिंग बफ़र इम्पोर्ट करता है। TV ट्यूनर को आर्किटेक्चरली अपनी डीकोडेड वीडियो स्ट्रीम को XVIO हाइपरवाइज़र रिंग बफ़र के माध्यम से डिलीवर करने के लिए डिज़ाइन किया गया था। ट्यूनर ने Windows नोटिफिकेशन फैसिलिटी (WNF) के माध्यम से ट्यूनर स्थिति प्रकाशित करने के लिए `ZwUpdateWnfStateData` का भी उपयोग किया।
### `PetraXC` Kinect सेंसर कंट्रोल डिवाइस
एक WDF वर्चुअल डिवाइस ड्राइवर जिसे अब **KinectSensorControl डिवाइस** के रूप में पहचाना गया है, जो Kinect कैमरा सेंसर के लिए कर्नेल-पक्षीय हार्डवेयर एब्स्ट्रैक्शन है। स्थिति: **डिवाइस आने तक अक्षम** (WDF डिमांड-स्टार्ट मॉडल)।
उल्लेखनीय विशेषताएँ:
- **WDF 1.11** के विरुद्ध निर्मित, जो Windows 8 से मेल खाता है, जो इसकी उत्पत्ति मूल Xbox One कर्नेल बेस पर रखता है
- `XVIO.SYS` इम्पोर्ट करता है, जिसका अर्थ है कि यह हाइपरवाइज़र रिंग बफ़र ट्रांसपोर्ट के माध्यम से संचार करता है
- `\\.\KinectSensorControl` को अपने डिवाइस इंटरफ़ेस के रूप में प्रस्तुत करता है, जिसे nuiservice पाइपलाइन में `KinectMediaSource.dll` द्वारा `DeviceIoControl` के माध्यम से उपभोग किया जाता है (Section 33 देखें)
### `pspsra.sys` AMD PSP से SRA ब्रिज
स्थिति: **सक्रिय रूप से चल रहा है** (`Start: 0x0`, बूट-स्टार्ट)। कर्नेल स्तर पर एक्सेस अस्वीकृत, ड्राइवर लॉक है और आगे निरीक्षण नहीं किया जा सकता।
`pspsra.sys` बूट चेन में SRA पार्टीशन के ठीक नीचे **AMD प्लेटफ़ॉर्म सिक्योरिटी प्रोसेसर (PSP) और SRA लेयर के बीच एक ब्रिज** के रूप में स्थित है। AMD PSP बेयर मेटल स्तर पर fTPM एटेस्टेशन और कंसोल प्रमाणपत्र संभालता है, और `pspsra.sys` वह ब्रिज है जो उस ट्रस्ट चेन को SRA में उजागर करता है। यह इसे `XVIO.SYS` और `XSraFlt.sys` के समान ट्रस्ट टियर में रखता है, जो SystemOS से पहले इनिशियलाइज़ होता है, उसके लिए अपारदर्शी है, और पूर्ण कर्नेल एक्सेस में भी अप्राप्य है।
---
## 12. अनसुलझे प्रश्न + ड्राइवर
प्रश्न:
1. **XVIO.SYS स्थान** किसी भी सुलभ फाइलसिस्टम पर नहीं; बूट पर हाइपरवाइज़र द्वारा लोड किया गया
2. **WSL उपयोग** मौजूद और उपयोग में होने की पुष्टि हुई लेकिन Xbox OS में विशिष्ट भूमिका पूरी तरह से मैप नहीं हुई
3. **`XCrdXpfOp`** अज्ञात XCRDAPI फ़ंक्शन (XPF = ?)
4. **`XSraFlt.sys` + `XRmnt.sys` स्थान** सभी सुलभ फाइलसिस्टम से अनुपस्थित होने की पुष्टि हुई; XVIO.SYS के साथ Host OS द्वारा लोड किया गया
5. **`xvnc` GUID `{REDACTED_GUID}`** वायरलेस एडेप्टर GUID, पूर्ण ड्राइवर चेन मैप नहीं हुई
6. **`S:\Shares\TitleScratch` रिपार्स पॉइंट टार्गेट** डायरेक्टरी लिस्टिंग में OS द्वारा सक्रिय रूप से रिडैक्ट किया जाता है; cmd.exe लेयर से नीचे `FSCTL_GET_REPARSE_POINT` की आवश्यकता होती है। लगभग निश्चित रूप से `\Device\Xrfs\<partition-guid>` (Section 26 देखें)
7. **`xvmctrl.sys` IOCTL सतह** लाइव कर्नेल डंप अवरुद्ध (रिटेल डेव मोड पर `NoKernelDumps` प्रतिबंध); IOCTL डिस्पैच टेबल अभी तक एन्यूमरेट नहीं हुई
8. **ERA पार्टीशन GUID** किसी भी सुलभ रजिस्ट्री पाथ के माध्यम से उजागर नहीं होता; कर्नेल डंप में दिखाई देगा (अवरुद्ध, बायपास पर विचार किया जा रहा है)
9. **`N:\EtwPlus\` सामग्री** कर्नेल फाइलसिस्टम फ़िल्टर ड्राइवर द्वारा सक्रिय रूप से छिपाई जाती है; पुष्टि की गई लेखन गतिविधि के बावजूद डायरेक्टरी लिस्टिंग खाली लौटती है। फ़िल्टर ड्राइवर की पहचान निर्धारित नहीं की गई है (Section 3.2 देखें)
10. Host OS समग्र रूप से, यह भी पूरी तरह से निश्चित नहीं है कि यह क्या करता है।
ड्राइवर:
1. **`xtcc.sys`**, `ntoskrnl.exe` और `XVIO.sys` के विशाल इम्पोर्ट को देखते हुए संभवतः किसी सुरक्षा-संबंधी चीज़ के लिए ज़िम्मेदार
2. **`FLTMGR.SYS`** `XRmnt.sys`, `XRo.sys` द्वारा इम्पोर्ट किया गया
---
## 13. वर्चुअलाइज़्ड I/O और रिमोट एक्सेस (XVIO/SRA)
`xboxcloudstreaming.dll` एक्सपोर्ट और `CurrentControlSet\Services` रजिस्ट्री प्रविष्टियों के विश्लेषण से रिमोट कनेक्शन के लिए गहरा कर्नेल-स्तरीय एकीकरण दिखता है, जो मानक सॉफ़्टवेयर इम्यूलेशन के बजाय एक "सिंथेटिक" हार्डवेयर मॉडल का उपयोग करता है। ERA VM इनपुट चाहे जहाँ से भी आए (रिमोट, USB, वायरलेस, आदि), उसे समान सिंथेटिक डिवाइस दिखाई देते हैं।
### 13.1 XVIO (वर्चुअल I/O) स्टैक
XVIO फ्रेमवर्क बाहरी या क्रॉस-पार्टीशन स्रोतों से SystemOS में हार्डवेयर-स्तरीय इवेंट इंजेक्ट करने की प्राथमिक विधि प्रतीत होती है।
| सेवा | श्रेणी | कार्य |
| --- | --- | --- |
| `hvsocketxvio` | ट्रांसपोर्ट | Hyper-V सॉकेट को XVIO प्रोटोकॉल से जोड़ने वाली ब्रिज सेवा। |
| `InputXVIOClient` | कोऑर्डिनेटर | रिमोट इनपुट पैकेट का वर्चुअल डिवाइस नोड्स पर मैपिंग प्रबंधित करता है। |
| `xviokbdbus` / `xviomoubus` | बस ड्राइवर | सिंथेटिक आंतरिक बस पर वर्चुअल HID डिवाइस एन्यूमरेट करता है। |
| `xviokbd` / `xviomou` | डिवाइस ड्राइवर | वर्चुअलाइज़्ड कीबोर्ड और चूहों के लिए विशिष्ट फ़ंक्शन ड्राइवर। |
### 13.2 सिंथेटिक कंट्रोलर पाइपलाइन
`xboxcloudstreaming.dll` बाइनरी `XboxgipSynthetic.dll` का लाभ उठाकर ऐसे परिधीय बनाती है जिन्हें OS शारीरिक रूप से जुड़े स्थानीय परिधीय के रूप में देखता है।
- **ऑडियो वर्चुअलाइज़ेशन:** `SyntheticController_AddAudioHeadset` के माध्यम से, सिस्टम रिमोट नेटवर्क ऑडियो को हार्डवेयर-बाउंड डिवाइस के रूप में कंसोल के लोकल ऑडियो स्टैक में पाइप कर सकता है।
- **इनपुट इंजेक्शन (RIM):** रिमोट इनपुट मैनेजर (`ext-ms-win-ntuser-rim-l1-1-0.dll`) का उपयोग पुष्टि करता है कि xCloud और रिमोट प्ले सत्र Windows रिमोट डेस्कटॉप के समान उच्च-अधिकार इंजेक्शन विधियों का उपयोग करते हैं, विशेष रूप से `InjectKeyboardInput` और `InjectPointerInput`।
### 13.3 SRA और "Arden" ड्राइवर
> **नोट:** `SraKmdArden` ड्राइवर Series X/S आर्किटेक्चर (Arden) के लिए हार्डवेयर-विशिष्ट है। यह ड्राइवर संभवतः सिस्टम को कर्नेल स्तर पर डिस्प्ले बफ़र को इंटरसेप्ट करने की अनुमति देता है, जिससे क्रॉस-vm ड्रॉइंग से जुड़ा लेटेंसी ओवरहेड न्यूनतम हो जाता है।
### 13.4 HvSocket ब्रिज (GUID `4545ffe2-...`)
पहले से अज्ञात HvSocket GUID को `hvsocketxvio` सर्विस से मिलान किया गया है। यह पुष्टि करता है कि XVIO एक स्वतंत्र प्रोटोकॉल नहीं है, बल्कि Hyper-V के आंतरिक सॉकेट ट्रांसपोर्ट के ऊपर चलने वाली एक लेयर है।
यह सुझाव देता है कि **ERA (गेम) पार्टीशन** इनपुट के लिए नेटवर्क से सीधे संवाद नहीं करता; इसके बजाय:
1. **SystemOS** `XboxNetApiSvc` के माध्यम से नेटवर्क पैकेट प्राप्त करता है।
2. **`xboxcloudstreaming.dll`** स्ट्रीम को प्रोसेस करता है।
3. **`hvsocketxvio`** **HvSocket** के माध्यम से रॉ इनपुट डेटा को पार्टीशन सीमा के पार पाइप करता है।
4. हाइपरवाइज़र/Host लेयर इसे हार्डवेयर इवेंट के रूप में टार्गेट पार्टीशन में इंजेक्ट करता है।
---
## 14. M:\ वॉल्यूम | ओवरले आर्किटेक्चर
M:\ ("System OS Misc" लेबल वाला) एक **ओवरले वॉल्यूम** के रूप में कार्य करता है, एक ट्री जिसमें ऐसे घटक होते हैं जो आधार C:\ इमेज के ऊपर माउंट किए जाते हैं। यह आर्किटेक्चर Microsoft को एकल OS इमेज भेजने और माउंट समय पर ओवरले के माध्यम से विशिष्ट फीचर-सेट लागू करने की अनुमति देता है।
### 14.1 वॉल्यूम संरचना
M:\
├── Catalog000-003.bin वॉल्यूम-विशिष्ट कोड इंटीग्रिटी कैटलॉग
└── windows\
├── system32\
│ ├── drivers\ कर्नेल ड्राइवर
│ ├── ht\ Kinect समर्थन (section 33 देखें)
│ └── [~120 DLLs] यूज़रस्पेस घटक
├── SystemApps\ सिस्टम ऐप्स
├── DefaultApp\
├── Fonts\
├── Speech_OneCore\
├── textinput\
└── WebManagement\
### 14.2 फाइलसिस्टम सिमलिंक
C:\ NTFS सिमलिंक के माध्यम से M:\ घटकों को संदर्भित करता है। सिमलिंक दो स्तरों पर मौजूद हैं:
**System32 ड्राइवर स्तर:**
C:\Windows\System32\drivers\srakmd_arden.sys -> M:\windows\system32\drivers\srakmd_arden.sys
**Windows डायरेक्टरी स्तर**
C:\Windows\DefaultApp -> M:\Windows\DefaultApp
C:\Windows\Fonts -> M:\Windows\Fonts
C:\Windows\SystemApps -> M:\Windows\SystemApps
C:\Windows\WebManagement -> M:\Windows\WebManagement
M:\ ओवरले एक साधारण ड्राइवर/DLL प्रतिस्थापन से अधिक व्यापक है, फॉन्ट स्टोर, सिस्टम ऐप्स और वेब मैनेजमेंट इंटरफ़ेस सहित कोर Windows सबसिस्टम डायरेक्टरी पूरी तरह से M:\ में निवासी हैं। इसका अर्थ हो सकता है कि एक विशिष्ट ओवरले न केवल GPU और कैप्चर ड्राइवरों को नियंत्रित करता है, बल्कि कुछ हद तक संपूर्ण सिस्टम ऐप और UI शेल लेयर को भी।
M:\ की ओर इशारा करने वाले C:\ सिमलिंक की पूर्ण पुनरावर्ती गणना पूरी नहीं की गई है।
### 14.3 हार्डवेयर-विशिष्ट ड्राइवर (M:\windows\system32\drivers\)
| ड्राइवर | आकार | उद्देश्य |
|---|---|---|
| `srakmd_arden.sys` | 274KB | SRA कैप्चर KMD -> Arden हार्डवेयर-विशिष्ट फ्रेम ग्रैबर |
| `acpi.sys` | 873KB | ACPI -> हार्डवेयर-विशिष्ट बिल्ड (जेनेरिक से बड़ा) |
| `spaceport.sys` | 1MB | स्टोरेज पोर्ट -> XVD क्रिप्टो + लाइसेंस जाँच |
| `spacedump.sys` | 304KB | स्टोरेज डंप ड्राइवर |
| `buttonconverter.sys` | 90KB | पावर/इजेक्ट HID -> कंसोल इवेंट रूपांतरण |
| `qwavedrv.sys` | 90KB | QoS/नेटवर्क गुणवत्ता ड्राइवर |
| `acpiex.sys` | 181KB | ACPI एक्सटेंशन |
| `AcpiDev.sys` | 61KB | ACPI डिवाइस एक्सटेंशन |
| `acpitime.sys` | 57KB | ACPI टाइमर |
**निष्कर्ष:** `XSraFlt.sys` M:\ ड्राइवरों के साथ-साथ C:\ से भी अनुपस्थित है। यह किसी भी सुलभ फाइलसिस्टम वॉल्यूम पर संग्रहीत नहीं है, जो सुझाव देता है कि इसे बूट पर `XVIO.SYS` और `FLTMGR.sys` के साथ Host OS द्वारा लोड किया जाता है।
### 14.4 हार्डवेयर-विशिष्ट यूज़रस्पेस घटक (M:\windows\system32\)
M:\ के लिए अद्वितीय उल्लेखनीय DLL/EXE:
**GPU / शेडर स्टैक:**
- `umd12ddi_arden.dll` (1.56MB) D3D12 यूज़र-मोड ड्राइवर DDI, Arden हार्डवेयर
- `umd12ddi_d.dll` (1.5MB) D3D12 UMD, डीबग/PIX इंस्ट्रूमेंटेड बिल्ड
- `umd12ddi_i.dll` (1.14MB) D3D12 UMD, इनबॉक्स/फ़ॉलबैक बिल्ड
- `newbe_xs.dll` (26MB) "NewBe" Arden GPU शेडर कंपाइलर बैकएंड
- `xbsc_xs.dll` (3.9MB) Xbox सीरीज़ शेडर कंपाइलर फ्रंटएंड
- `dxcompiler_xs.dll` (17.8MB) Xbox सीरीज़ HLSL कंपाइलर
- `dxbc2dxil_xs.dll` (2.9MB) DXBC से DXIL बाइटकोड कन्वर्टर
- `pixrtddi.dll` (679KB) PIX रेंडर/डीबग DDI
**डेवलपर / PIX टूलचेन:**- `VsGraphicsRemoteEngine.exe` (4.75MB) PIX GPU प्रोफाइलर रिमोट इंजन
- `VsGraphicsCapture.dll` (225KB) PIX फ्रेम कैप्चर
- `VsGraphicsExperiment.dll` (327KB) PIX प्रयोग फ्रेमवर्क
- `DXCaptureReplay.dll` (18MB) GPU कैप्चर रिप्ले इंजन
- `DXCap.exe` (1.19MB) GPU कैप्चर टूल
- `DXToolsMonitor.dll` / `DXToolsOfflineAnalysis.dll` / `DXToolsReporting.dll` PIX विश्लेषण स्टैक
- `DXGIDebug.dll` (151KB) DXGI डीबग लेयर
- `d3d12SDKLayers.dll` (4.8MB) D3D12 वैलिडेशन/डीबग लेयर
- `d3d11_3SDKLayers.dll` (1.19MB) D3D11 डीबग लेयर
- `d2d1debug3.dll` (618KB) D2D डीबग लेयर
- `VSD3DWARPDebug.dll` (155KB) WARP सॉफ़्टवेयर रास्टराइज़र डीबग बिल्ड
- `plmdebug.exe` (204KB) PLM (प्रोसेस लाइफसाइकल) डीबगर
**स्ट्रीमिंग / रिमोट एक्सेस:**
- `rdpbase.dll` (1.8MB) RDP बेस लाइब्रेरी
- `rdpserverbase.dll` (2.3MB) RDP सर्वर बेस
- `XboxDevService.exe` (3.7MB) Xbox डेव सेवा होस्ट
- `XboxDevService.ProxyStub.dll`
**सोशल / प्लगइन स्टैक:**
- `DiscordPlugin.dll` (139KB) Discord इंटीग्रेशन
- `TwitchPlugin.dll` (639KB) Twitch स्ट्रीमिंग इंटीग्रेशन
**अन्य उल्लेखनीय:**
- `XboxSyntheticKM.dll` (36KB)
- `xrmntcl.exe` (90KB) Xbox रनटाइम माउंट क्लाइंट
- `xtfupdateT_s_i.dll` (98KB) ?
- `xtcapi.dll` (57KB) XTC API (Xbox टाइटल कम्युनिकेशंस?)
- `wusys.dll` (308KB) Windows Update सिस्टम इंटीग्रेशन
---
## 15. GPU स्टैक | शेडर संकलन पाइपलाइन
संपूर्ण Xbox सीरीज S/X शेडर संकलन पाइपलाइन M:\ पर स्थित है और C:\ पर अनुपस्थित है। हार्डवेयर-विशिष्ट ओवरले माउंट किए बिना शेडर संकलन संभव नहीं है।
### 15.1 `newbe_xs.dll`
26MB DLL। Arden GPU शेडर कंपाइलर बैकएंड। केवल 6 एक्सपोर्ट्स:
NB_CompileShader compile individual shader stage
NB_CompilePipeline compile full pipeline state object
NB_CreateOptimizer create register allocator / instruction scheduler
NB_GetRegPressure register pressure analysis (PIX-facing)
NB_GetShaderStats hardware shader statistics
NB_CreatePixDwarfApi generate DWARF debug info for GPU shaders
`.pass` सेक्शन LLVM-शैली की pass पाइपलाइन का संकेत दे सकता है। `NB_CreatePixDwarfApi` PIX के लिए सोर्स-स्तरीय शेडर डीबग जानकारी उत्पन्न करता है।
### 15.2 `xbsc_xs.dll`
संपूर्ण संकलन API को कवर करने वाले 41 एक्सपोर्ट्स:
XBSC_PipelineCompile / XBSC_GetPipelineCompileOutput
XBSC_CompileRootSignature / XBSC_GetCompiledRootSignature
XBSC_AssembleShader / XBSC_GetAssembledShader
XBSC_DisassembleHwPipeline / XBSC_DisassembleHwPipelineWithCallback
XBSC_DisassembleRawShader / XBSC_GetDisassembly
XBSC_GetRegPressure / XBSC_GetShaderStats / XBSC_DumpShaderStats
XBSC_CompressBuffer / XBSC_DecompressBuffer (shader cache compression)
XBSC_Serialize* / XBSC_Deserialize* (pipeline state serialization)
SCCompileMultiShadersXbox / SCDumpHwShader* (batch compilation)
SC_ConvertRootSignatureToSCInputs
`_mmddu` और `_MMDDT0` PE सेक्शन **Microsoft Machine-Dependent Driver Data**, यानी कंपाइलर में बेक की गई हार्डवेयर माइक्रोआर्किटेक्चर तालिकाएँ (इंस्ट्रक्शन लेटेंसी, रजिस्टर फ़ाइल टोपोलॉजी, Arden के लिए एक्ज़ीक्यूशन यूनिट गणना) रखते हैं।
### 15.3 `dxcompiler_xs.dll`
17.8MB। DXC HLSL कंपाइलर का Xbox सीरीज फोर्क। 4 एक्सपोर्ट्स:
DxcCreateInstance / DxcCreateInstance2 standard DXC factory (compatible with public API)
CreateXdxrCompiler / CreateXdxrCompiler2 Xbox DXIR compiler (Xbox-specific IR format)
### 15.4 `dxbc2dxil_xs.dll` Bytecode Converter
2.9MB। एकल एक्सपोर्ट:
SCDxil_ConvertDxbcToDxil convert DX11 DXBC bytecode to DXIL for DX12 pipeline
यह पिछड़े-संगत DX11 शेडरों को DX12-only Arden पाइपलाइन पर चलाने में सक्षम बनाता है।
### 15.5 संपूर्ण शेडर संकलन श्रृंखला
Game/App submits HLSL or legacy DXBC shader
↓
[HLSL path] [DXBC legacy path]
dxcompiler_xs.dll dxbc2dxil_xs.dll
(DxcCreateInstance -> DXIL) (SCDxil_ConvertDxbcToDxil -> DXIL)
↓ ↓
└──────────┬──────────────────┘
↓
xbsc_xs.dll (XBSC_PipelineCompile)
calls newbe_xs.dll NB_ backend
uses _MMDDT0 Arden microarch tables
↓
umd12ddi_arden.dll
(submits compiled ISA via D3D12 DDI)
uses xg_xs.dll for texture layout
↓
srakmd_arden.sys (kernel)
XvioGetReservedMemory -> hypervisor carve-out RAM
zero-copy framebuffer -> ERA partition
---
## 16. `xg_xs.dll` Xbox ग्राफिक्स टेक्सचर लेआउट लाइब्रेरी
**C:\** पर स्थित (M:\ पर नहीं)। इसमें टेक्सचर टाइलिंग, रे ट्रेसिंग BVH लेआउट और DCC कम्प्रेशन को कवर करने वाले 27 एक्सपोर्ट्स हैं।
### 16.1 एक्सपोर्ट सतह
XGComputeBufferLayout
XGComputeTexture1DLayout / 2DLayout / 3DLayout
XGComputeOptimalSwizzleMode / OptimalDepthStencilSwizzleMode
XGComputeTileShape
XGSuggestSwizzleMode
XGValidateDepthStencilSwizzleMode / XGValidateDescriptor
XGCreateTexture1DComputer / 2DComputer / 3DComputer
XGCreateTextureComputer / XGCreateTextureComputerFromDescriptor
XGCreateBVHComputer / XGCreateBVHComputer2 ray tracing BVH layout
XGEncodeDCC / XGDecodeDCC / XGDecodeDCCSurface AMD Delta Color Compression
XGShuffleTextureBufferForDirectStorage GPU-side texture tiling for DirectStorage
XGSetHardwareVersion configure for Series S vs Series X memory layout
XGInitializeLibrary / XGTerminateLibrary
XGEnableExclusiveLocking / XGEnterExclusiveLock / XGLeaveExclusiveLock
### 16.2 मुख्य निष्कर्ष
**रे ट्रेसिंग BVH लेआउट हार्डवेयर-विशिष्ट है।** `XGCreateBVHComputer2` दूसरी पीढ़ी के BVH लेआउट API को उजागर करता है, जो दर्शाता है कि Arden आर्किटेक्चर में एक अलग BVH नोड प्रारूप है जो सामान्य DXR से भिन्न है।
**AMD DCC कम्प्रेशन उजागर होता है।** `XGEncodeDCC` / `XGDecodeDCC` AMD के Delta Color Compression को लागू करते हैं, जो RDNA GPU पर उपयोग होने वाला हार्डवेयर लॉसलेस फ्रेमबफर कम्प्रेशन है। `XGDecodeDCCSurface` वह API है जिसका उपयोग PIX DCC-संपीड़ित कैप्चर किए गए फ्रेमबफर को रीड बैक करते समय करता है।
**DirectStorage टाइलिंग।** `XGShuffleTextureBufferForDirectStorage` GPU-साइड शफल करता है जो GPU डीकम्प्रेशन के दौरान डिस्क-पर टेक्सचर लेआउट को Arden हार्डवेयर टाइलिंग प्रारूप में बदल देता है, जिससे ज़ीरो-कॉपी लोड-टू-VRAM सक्षम होता है।
**`XGSetHardwareVersion` सभी लेआउट एल्गोरिदम को नियंत्रित करता है।** लाइब्रेरी में कई हार्डवेयर रिवीज़नों के लिए लेआउट इम्प्लीमेंटेशन हैं। Series S बनाम Series X पहचानकर्ता के साथ `XGSetHardwareVersion` को कॉल करने पर अलग-अलग टाइलिंग परिणाम मिलते हैं, जो विभिन्न मेमोरी बस चौड़ाई और कैश ज्योमेट्री को दर्शाते हैं।
### 16.3 `.xbld` निर्माण मेटाडेटा सेक्शन
`xg_xs.dll` में एक `.xbld` PE सेक्शन है जो अन्य सभी Xbox बाइनरी में अनुपस्थित है, जो दर्शाता है कि यह Xbox OS बिल्ड सिस्टम के बजाय एक अलग GDK CI बिल्ड पाइपलाइन से उत्पन्न होता है। OS बिल्ड सिस्टम टाइमस्टैम्प को शून्य कर देता है और मेटाडेटा सेक्शन हटा देता है; GDK CI ऐसा नहीं करता।
_xbld_edition_build = GXDK, 0x65F41B62
_xbld_edition_full_productbuild = GXDK, 10.0.26100.7010
_xbld_edition_sdktype = GXDK, 260400
_xbld_edition_name = GXDK, April 2026 GXDK
_xbld_edition_mscver = GXDK, 193833145.100
**"April 2026 GXDK"** की `edition_name` वैल्यू उस SDK संस्करण के सार्वजनिक रिलीज़ से पहले की है (लेखन के समय यह 9 मार्च 2026 है), यह पुष्टि करती है कि रिटेल OS उन GDK घटकों के साथ आता है जो अगले अवारिल जारी SDK चक्र के विरुद्ध निर्मित हैं। `sdktype=260400` वर्ज़निंग `YYMMRR` (वर्ष/माह/रीविज़न) पैटर्न का अनुसरण करती है।
`edition_build` टाइमस्टैम्प `0x65F41B62` **13 मार्च 2024** का संकेत देता है, जो OS बिल्ड तिथि (12 फरवरी 2026) से एक वर्ष से अधिक पहले की तारीख है, यह दर्शाता है कि टेक्सचर लेआउट एल्गोरिदम कम से कम 5 GDK रिलीज़ चक्रों में स्थिर और अपरिवर्तित रहे हैं।
`mscver=193833145.100` कंपाइलर को **MSVC 19.38** (विज़ुअल स्टूडियो 2022 17.8.x) के रूप में पहचानता है।
### 16.4 निर्माण पाइपलाइन अनुमान (UUP?)
GDK CI pipeline builds xg_xs.dll (with .xbld metadata intact)
↓
┌─────────────────────────┐
↓ ↓
Xbox OS image ingests April 2026 GDK SDK package
artifact directly ships same binary to developers
↓
Ships on every retail console
इसका मतलब है कि रिटेल कंसोल पर मौजूद `xg_xs.dll` डेवलपर्स को GDK में मिलने वाली बाइनरी के साथ बिट-दर-बिट समान है। April 2026 सार्वजनिक GDK रिलीज़ के विरुद्ध हैश सत्यापन (उपलब्ध होने पर) इसकी पुष्टि करेगा।
---
## 17. कैटलॉग-आधारित कोड इंटीग्रिटी मॉडल
### 17.1 PE कंटेनर प्रारूप
प्रत्येक वॉल्यूम पर मौजूद `Catalog*.bin` फ़ाइलें **PE32+ निष्पादन योग्य हैं जिनका subsystem `0x11`** है ("Xbox Code Catalog"), एक अनिर्दिष्ट सबसिस्टम जो किसी भी सार्वजनिक दस्तावेज़ में मौजूद नहीं है। मुख्य PE हेडर विशेषताएँ:
Magic: PE32+ (64-bit)
Subsystem: 0x11 ("Xbox Code Catalog", obtained from strings inside MSVC link.exe)
Entry point: 0 (never executed)
Code size: 0 (no executable code)
DLL Chars: IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE
IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY <- critical
IMAGE_DLLCHARACTERISTICS_NX_COMPAT
Sections: 1 unnamed read-only section (raw payload)
ये कैसे काम करते हैं, मुझे निश्चित नहीं है, Xbox One
### 17.2 विश्वास श्रृंखला
Hypervisor/Host OS validates Catalog*.bin PE Authenticode signature at boot (FORCE_INTEGRITY)
↓
Catalog payload contains hashes of protected binaries on that volume
↓
Code Integrity checks each binary's hash against catalog at load time
↓
Individual binaries carry no Authenticode signatures of their own
यह एक **कैटलॉग-आधारित विश्वास** मॉडल है। एक एकल Microsoft हस्ताक्षर प्रति वॉल्यूम कई फ़ाइलों को कवर करता है। व्यक्तिगत बाइनरी और संभवतः अन्य फ़ाइल प्रकार अहस्ताक्षरित हैं; उनकी अखंडता कैटलॉग में सदस्यता द्वारा सुनिश्चित होती है।
**प्रविष्टि संख्या और आकार:**
| Volume | Catalog | पेलोड आकार | प्रविष्टियाँ (÷32) |
|---|---|---|---|
| C:\ | Catalog000.bin | 5,533,696 bytes | 172,928 |
| C:\ | Catalog001.bin | 253,952 bytes | 7,936 |
| C:\ | Catalog002.bin | 57,344 bytes | 1,792 |
| C:\ | Catalog003.bin | 176,128 bytes | 5,504 |
| M:\ | Catalog000.bin | 5,537,792 bytes | 173,056 |
| M:\ | Catalog001.bin | 258,048 bytes | 8,064 |
| M:\ | Catalog002.bin | 61,440 bytes | 1,920 |
| M:\ | Catalog003.bin | 180,224 bytes | 5,632 |
हर कैटलॉग (PE सेक्शन के अंदर) की पेलोड लंबाई बिना शेषफल के बिल्कुल 32 से विभाज्य है, और 36, 40, या अन्य सामान्य रिकॉर्ड आकारों से लगातार विभाज्य नहीं है। यह दृढ़ता से सुझाव देता है कि पेलोड **32-बाइट रिकॉर्ड** की एक सपाट सरणी है।
**हैश एल्गोरिदम:** ज्ञात बाइनरी की पूरी-फ़ाइल SHA-256 और SHA-1 हैश कैटलॉग में नहीं मिले, जो सरल पूरी-फ़ाइल हैशिंग को खारिज करता है। सबसे संभावित प्रारूप **Authenticode पेज हैश** है, जो Windows CI मानक है जहाँ PE फ़ाइल के मैप किए गए सेक्शनों का प्रत्येक 4KB-संरेखित पृष्ठ व्यक्तिगत रूप से हैश किया जाता है। इससे प्रति फ़ाइल प्रति पृष्ठ एक 32-बाइट (SHA-256) प्रविष्टि बनेगी, जो बड़ी प्रविष्टि संख्याओं (केवल C:\ के लिए 172,928 प्रविष्टियाँ) की व्याख्या करती है।
**क्रम:** पेलोड हैश वैल्यू के अनुसार क्रमबद्ध नहीं है। क्रम योजना निर्धारित नहीं की जा सकी है; संभावनाओं में फ़ाइल पथ हैश द्वारा क्रम, इंस्टॉल पैकेज द्वारा, वॉल्यूम की फ़ाइल समुच्चय के भीतर पृष्ठ ऑफ़सेट द्वारा, या किसी NTFS विशेषता द्वारा क्रम शामिल है।
**कोई हेडर नहीं:** पेलोड के पहले 128 बाइट्स में कोई पहचानने योग्य ASCII मैजिक, कोई छोटा पूर्णांक फ़ील्ड नहीं है जो गिनती या संस्करण दर्शा सके, और न ही किसी मानक हेडर के अनुरूप संरचना है। हैश सरणी बिना किसी प्रस्तावना के पेलोड के बाइट 0 से शुरू होती है।
### 17.3 केवल-लोड-समय प्रवर्तन
कोड इंटीग्रिटी प्रवर्तन **केवल लोड-समय** है। एक बार जब कोई बाइनरी कैटलॉग हैश सत्यापन पार कर लेती है और पृष्ठ मेमोरी में मैप हो जाते हैं, तो CI की आगे कोई भागीदारी नहीं होती। HVCI (हाइपरवाइज़र-संरक्षित कोड इंटीग्रिटी), यदि SystemOS पर सक्रिय हो, तो लोड किए गए कोड पृष्ठों को हाइपरवाइज़र पेज टेबल स्तर पर हार्डवेयर रीड-ओनली बनाकर परिणामी TOCTOU (जाँच-समय से उपयोग-समय) विंडो को बंद कर देता। **SystemOS पर HVCI बंद होने की पुष्टि हो चुकी है**, `IsSecureKernelRunning = 0x0` (धारा 18 देखें)। इसलिए TOCTOU विंडो मौजूद है।
### 17.5 होस्ट OS घटक
दो ड्राइवरों की सभी सुलभ फाइलसिस्टम वॉल्यूम से अनुपस्थिति की पुष्टि हो चुकी है और SRA आरंभ होने से पहले इन्हें सीधे Host OS द्वारा लोड किया जाता है:
- `XVIO.SYS` Xbox वर्चुअल I/O कोर (कोई रजिस्ट्री सेवा प्रविष्टि नहीं, किसी भी वॉल्यूम पर नहीं)
- `FLTMGR.sys` फ़िल्टर मैनेजर
- `XSraFlt.sys` SRA फ़िल्टर (सेवा प्रविष्टि मौजूद है, किसी भी वॉल्यूम पर कोई संगत फ़ाइल नहीं)
ये घटक पूरी तरह से कैटलॉग विश्वास मॉडल के बाहर मौजूद हैं। पूर्ण SystemOS कर्नेल एक्सेस के साथ भी उनके साथ छेड़छाड़ नहीं की जा सकती, क्योंकि इन्हें HostOS (मूल System OS) का लोडिंग शुरू होने से पहले बूटलोडर द्वारा मैप किया जाता है।
Xbox One घटकों की जानकारी [यहाँ पाई जा सकती है](https://xboxoneresearch.github.io/wiki/boot/vbi/), हालाँकि मैं पूरी तरह निश्चित नहीं हूँ कि HostOS अब तक बदला नहीं है।
---
## 18. HVCI स्थिति
> **प्रभाव:** HVCI बंद होने पर, कोड इंटीग्रिटी केवल लोड-समय की है। एक बार बाइनरी मेमोरी में मैप हो जाने पर, इन-मेमोरी संशोधन को रोकने वाला कोई हार्डवेयर प्रवर्तन नहीं होता। इसलिए धारा 17.3 में वर्णित TOCTOU विंडो खुली है। इच्छित सुरक्षा सीमा पूरी तरह से SystemOS का ERA (GameOS) के साथ संवाद न करने पर निर्भर रहती है।
`HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\KeyGuard\Status`
IsSecureKernelRunning = 0x0
सिक्योर कर्नेल (VTL1) SystemOS पर नहीं चल रहा है, जो पुष्टि करता है कि HVCI सक्रिय नहीं हो सकता। यह एक जानबूझकर किया गया प्रदर्शन समझौता है, गेम लूप में कर्नेल गतिविधि पर कोई VTL1 कर नहीं। सुरक्षा सीमा हाइपरवाइज़र पार्टीशन स्वयं है, न कि इन-पार्टीशन मेमोरी सुरक्षा। इसलिए कोड इंटीग्रिटी मॉडल (धारा 17) केवल लोड-समय है और इसमें कोई TOCTOU सुरक्षा नहीं है।
---
## 19. sevpipe हाइपरवाइज़र IPC नेमस्पेस
एक कस्टम Windows named pipe डिवाइस नेमस्पेस (`\\.\sevpipe\`) जो सभी Xbox-विशिष्ट इंटर-प्रोसेस और क्रॉस-पार्टीशन संचार के लिए प्राथमिक IPC रीढ़ के रूप में कार्य करता है। प्रोटोकॉल स्तर पर यह कोई हाइपरवाइज़र निर्माण नहीं है, अंतर्निहित मानक Windows named pipe सेमेंटिक्स, सामान्य पाइप गणना उपकरणों से छिपाने के लिए एक कस्टम डिवाइस नेमस्पेस के तहत पंजीकृत है।
### 19.1 पूर्ण पाइप सूची
EtxForwarder <- telemetry data
EtxForwarderToUploaderControl <- telemetry control
XrfsPipe <- cross-partition filesystem
ERASwapChainPipe <- ERA framebuffer (dynamic)
ERAPresentPipe <- ERA present signals (dynamic)
XvioAudioPipe <- ERA audio (dynamic)
XvioAudioEventPipe <- ERA audio events (dynamic)
XboxOneAudioStatePipe <- system audio state
XTF_SYSTEM_TO_TITLE <- XTF command channel (dynamic)
XTF_TITLE_TO_SYSTEM <- XTF response channel (dynamic)
CloudStreamingServer <- xCloud (dynamic)
\SEVPipe\epmapper <- Xbox RPC endpoint mapper
\SEVPipe\epmapperX <- extended RPC endpoint mapper
गतिशील पाइप केवल तभी मौजूद होते हैं जब ERA सक्रिय हो, XTF सत्र चल रहा हो, या xCloud स्ट्रीम कर रहा हो।
### 19.2 एक्सेस नियंत्रण नक्शा
EtxForwarder <- DevToolsUser WRITE
EtxForwarderToUploaderControl <- DevToolsUser WRITE
XrfsPipe <- SYSTEM only
ERASwapChainPipe <- SYSTEM only
ERAPresentPipe <- SYSTEM only
XvioAudioPipe <- SYSTEM only
XTF_SYSTEM_TO_TITLE <- SYSTEM only
### 19.3 टेलीमेट्री पाइपलाइन
Process calls EtxEventWrite()
↓
EtwPlus.dll
↓ writes to
\\.\pipe\EtxUploader
↓
EtwUploader.exe (PID 1808, SYSTEM)
↓ forwards to
\\.\sevpipe\EtxForwarder <- data
\\.\sevpipe\EtxForwarderToUploaderControl <- control
↓
NetworkTransferManagerService.exe (PID 2040, SYSTEM)
↓
[unknown endpoint, dynamic library load]
↑
DevToolsUser can inject at EtxForwarder and control pipe
`EtwPlus.dll` Xbox-विशिष्ट है (`FileDescription: Xbox ETW Plus API`), संस्करण `10.0.26100.7010`। रिटेल बिल्ड में Suspend/resume एक्सपोर्ट्स संभवतः स्टब हैं, तीन एक्सपोर्ट समान RVA साझा करते हैं।
### 19.4 videoserver.exe RTSP स्क्रीन कैप्चर (संभवतः [Xbox Dev Mode Companion](https://apps.microsoft.com/detail/9nblggh519cp) का अवशेष)
पोर्ट: 11442 (बाइनरी में हार्डकोडेड)। निर्भरताएँ:
Windows.Xbox.Graphics.Display.Internal.DisplayManager
Windows.Xbox.System.Internal.GameStreaming.GameStreamingAgent
Windows.Xbox.Media.Capture.ApplicationClipShell
**मुख्य निष्कर्ष:** यह ठीक से कार्य करता हुआ नहीं दिखता। कंसोल के अंदर या बाहर से वीडियो स्ट्रीम तक पहुँचने का कोई तरीका नहीं मिला है।
हार्डकोडेड पथ/फ्लैग:
DisableXboxDevToolsTelemetry <- env var to suppress its telemetry
VideoServerMaxPacketSize <- configurable via env var
EnableVideoServer <- WdConfig flag confirmed here
OSDATA\...\DevkitProperties <- reads devkit properties at runtime
### 19.5 OneSettings / Windows Update स्कीमा
Xbox में पूर्ण Windows Update टार्गेटिंग स्कीमा शामिल है, जिसमें `XBOXMOBILE` टार्गेटिंग प्रविष्टियाँ और `WCOS` रजिस्ट्री हाइव पथ शामिल हैं, यह पुष्टि करता है कि Xbox सीरीज S HoloLens और Surface Hub के साथ साझा किए गए Windows Core OS (WCOS) आधार पर चलता है। OS हल्का-अनुकूलित Windows 11 24H2 है, विशेष-उद्देश्य वाला प्लेटफ़ॉर्म OS नहीं।
---
## 20. हाइपरवाइज़र पार्टीशन टोपोलॉजी
`HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\HvSocket\Addresses`
LocalAddress = {REDACTED_GUID} SystemOS partition GUID
ParentAddress = {REDACTED_GUID} null parent
SystemOS स्वयं को **रूट पार्टीशन** मानता है (गलत; Host OS रूट है)। ERA गेम पार्टीशन SystemOS की चाइल्ड है। ERA पार्टीशन GUID किसी भी सुलभ रजिस्ट्री पथ के माध्यम से SystemOS के लिए उजागर नहीं होता, और यह यादृच्छिक हो सकता है।
### HvSocket क्रॉस-पार्टीशन वाइल्डकार्ड एंडपॉइंट
`HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\HvSocket\WildcardDescriptors`
SHA1 सेवा SID गणना के माध्यम से हल किए गए चार सेवा GUID:
| GUID | सेवा | उद्देश्य |
|------|---------|---------|
| `REDACTED_GUID` | DiagTrack | टेलीमेट्री पाइप 1 |
| `REDACTED_GUID` | DiagTrack | टेलीमेट्री पाइप 2 |
| `REDACTED_GUID` | RpcSs | अंतर-पार्टीशन RPC |
| `REDACTED_GUID` | EventLog | क्रॉस-पार्टीशन इवेंट अग्रेषण |
DiagTrack, RpcSs और EventLog प्रथम-श्रेणी के क्रॉस-पार्टीशन नागरिक हैं। गेम टेलीमेट्री, RPC कॉल और इवेंट समर्पित हाइपरवाइज़र सॉकेट चैनलों के माध्यम से ERA से SystemOS तक पहुँचाए जाते हैं, जो ERA के अंदर चल रही किसी भी चीज़ के लिए अदृश्य हैं।
---
## 21. ग्राफिक्स कॉन्फ़िगरेशन
`HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers`
WddmVersion_Max = WddmVersion_Min = 0x9C4 (WDDM 2.5) pinned, not negotiated
DisableCcdDatabase = 1
DisableHpdHandling = 1
DisableUsingMonitorPowerForSimulatedMonitor = 1
DirectFlipMemoryRequirement = 0x40 (64MB)
PinnedMemoryLimit = 0x59 (89MB)
AdapterMPO_3 = 1 MPO tier 3 enabled
WDDM संस्करण निगोशिएट नहीं किया जाता, बल्कि पिन किया जाता है; डिस्प्ले पाइपलाइन फर्मवेयर और हाइपरवाइज़र के अधीन है, WDDM मॉनिटर हैंडलिंग में शामिल नहीं है। MPO टियर 3 (`AdapterMPO_3`) वह तरीका है जिसके द्वारा ERA गेम फ्रेमबफर और SystemOS UI पार्टीशनों के बीच सॉफ्टवेयर ब्लिट के बिना कंपोज़िट होते हैं: प्रत्येक सतह एक अलग हार्डवेयर ओवरले प्लेन पर होती है।
---
## 22. WdApp.exe पैकेज मैनेजर और ऐप लाइफसाइकल टूल
`J:\tools\WdApp.exe` Xbox ऐप प्लेटफ़ॉर्म के लिए एक पूर्ण पैकेज मैनेजर और अनुप्रयोग जीवनचक्र प्रबंधक है। संपूर्ण कमांड सतह:| Command | उद्देश्य |
|---------|---------|
| `install` | वेब सर्वर, नेटवर्क शेयर या स्थानीय पथ से एक पैकेज्ड बिल्ड स्ट्रीम करें |
| `register` / `unregister` | लूज़-फ़ाइल ऐप पैकेज को पंजीकृत/अपंजीकृत करें |
| `registerdrive` | एक पूरी ड्राइव पर सभी एप्लिकेशन एक साथ पंजीकृत करें |
| `registernetworkshare` | वैकल्पिक क्रेडेंशियल के साथ UNC नेटवर्क शेयर से इंस्टॉल करें |
| `registerscratch` | डेव स्क्रैच ड्राइव से पंजीकृत करें |
| `registertitlescratch` | ERA टाइटल स्क्रैच ड्राइव से पंजीकृत करें |
| `launch` | AUMID, exe पथ या URI द्वारा लॉन्च करें |
| `terminate` / `suspend` | चल रहे ऐप को रोकें या सस्पेंड करें |
| `uninstall` | किसी ऐप या उसके हिस्सों को अनइंस्टॉल करें |
| `list` | सभी पंजीकृत एप्लिकेशन सूचीबद्ध करें |
| `listdlc` | इंस्टॉल किए गए DLC सूचीबद्ध करें |
| `move` / `copy` | किसी पैकेज को स्थानांतरित या कॉपी करें |
| `movedrive` / `copydrive` | किसी ड्राइव पर सभी पैकेज स्थानांतरित या कॉपी करें |
| `applyconfig` | निर्दिष्ट सेटिंग्स या `game.config`/`.xvd` के साथ ERA गेम OS लॉन्च करें |
| `queryconfig` | चल रहे गेम OS का 4-भाग वाला संस्करण नंबर प्रिंट करें |
| `queryversioninfo` | दिए गए पैकेज के लिए गेम OS संस्करण क्वेरी करें |
| `collectxip` | XIP ट्रेस एकत्र करें |
| `lastgamedetails` | अंतिम बार चले गेम के बारे में विवरण प्राप्त करें |
| `installkey` | कंसोल पर एक कुंजी इंस्टॉल करें |
| `installplan` | कंसोल पर एक प्लान इंस्टॉल करें |
| `overlayfolder` | पैकेज ओवरले फ़ोल्डर प्रबंधित करें |
### उल्लेखनीय निष्कर्ष
**`applyconfig [game.config | ERA.xvd]`** कमांड लाइन से सीधे ERA पार्टीशन बूट नियंत्रण। यह या तो `.xvd` XVD डिस्क इमेज या `game.config` सेटिंग्स फ़ाइल स्वीकार करता है। बिना तर्कों के चलाने पर, यह सबसे हाल ही में उपयोग किए गए गेम OS को लॉन्च करता है। ऐसे सिस्टम पर जिसमें पिछला गेम संदर्भ नहीं है, यह `0x87E50002` (ERA फैसिलिटी, कोई XVD नहीं मिला) लौटाता है।
**`/drive=Retail`** `install` कमांड `Retail`, `Development` और `Ext1-Ext7` को लक्ष्य ड्राइव स्पेसिफायर के रूप में स्वीकार करता है, जिससे डेव शेल से सीधे रिटेल स्टोरेज पार्टीशन पर पैकेज इंस्टॉलेशन की अनुमति मिलती है।
**`/WaitToExit`** `launch` पर WdApp को लॉन्च की गई प्रक्रिया का पैरेंट बनाता है और एग्ज़िट कोड कैप्चर करता है। सिस्टम ऐप इसे `0x8D160121` (Xbox PLM फैसिलिटी, गलत लाइफसाइकिल पैरेंट) के साथ अस्वीकार करते हैं। `/WaitToExit` के बिना लॉन्च करना सफल होता है क्योंकि ShellCoreService लाइफसाइकिल स्वामित्व बनाए रखता है।
**`launch` AUMID एन्कोडिंग** सिस्टम ऐप AUMID को base64 एन्कोडिंग की आवश्यकता होती है जो `.xboxunattend` QuickActions स्क्रिप्ट में उपयोग किए गए पैटर्न से मेल खाती है:```
WdApp.exe launch <base64(FamilyName!AppId)>
डिवाइस पोर्टल वेब सर्वर (WebManagement.exe, PID 2344) अपना फ्रंटएंड M:\windows\WebManagement\www\default\ से सर्व करता है। संपूर्ण REST API स्कीमा js\RestDocumentation.json (40KB) में प्रलेखित है।
प्रमाणीकरण: HTTPS पोर्ट 11443 पर HTTP बेसिक प्रमाणीकरण। क्रेडेंशियल डिवाइस पोर्टल उपयोगकर्ता नाम और वह PIN हैं जो डेव मोड सक्रियण के दौरान सेट किया गया था।
कई एंडपॉइंट प्रतिबंध फ़्लैग रखते हैं जो उन्हें रिटेल डेव मोड कंसोल पर अक्षम कर देते हैं:
यूज़र-मोड लाइव प्रोसेस डंप (/api/debug/dump/usermode/live?pid=<pid>) nonRestrictable हैं और रिटेल डेव मोड पर सफल होते हैं।
GET /api/resourcemanager/processes के माध्यम से प्राप्त। चुनिंदा उल्लेखनीय प्रोसेस:
| Tool | Purpose |
|---|
| Windows Explorer | Xbox नेटवर्क शेयर (निर्देश https://XBOX:11443/#File%20explorer > Browse पर) |
SSH (DevToolsUser + VS PIN) | SystemOS तक शेल एक्सेस |
mklink /J | नेटवर्क शेयर पर ड्राइव उजागर करने के लिए NTFS जंक्शन निर्माण |
Device Portal (https://XBOX:11443) | REST API, फाइल ब्राउज़र, प्रोसेस सूची, लाइव डंप |
dumpbin /IMPORTS, dumpbin /EXPORTS | नेटवर्क शेयर पर PE बाइनरी का स्थैतिक विश्लेषण |
| Python | REST API को स्वचालित करने की स्क्रिप्ट |
| Phasor | कंसोल पर उपयोग के लिए स्क्रिप्टिंग रनटाइम (नेटवर्क शेयर पर कॉपी करें, SSH के माध्यम से चलाएं) यहां डाउनलोड करें |
reg query | SSH शेल से रजिस्ट्री गणना |
WdApp.exe | पैकेज मैनेजर और ERA जीवनचक्र नियंत्रण (कमांड सतह गणना) |
WdConfig.exe | कंसोल सेटिंग्स API गणना |
| ETL trace analysis | Windows Update पाइपलाइन S:\Deployment\SoftwareDistribution\ जंक्शन के माध्यम से |
| Live process dumps | GET /api/debug/dump/usermode/live?pid=<pid> |
| Ghidra | COM इंटरफेस / ड्राइवरों का विश्लेषण |
| IDA Pro | जटिल DLLs और COM इंटरफेस के कॉल ग्राफ |
| XboxTools | विभिन्न चीजों के लिए मेरे अपने उपयोगिताओं का संग्रह |
| नेमस्पेस | बेस URI | मुख्य एंडपॉइंट |
|---|
| App Deployment | /api/appx/packagemanager/ | पैकेज इंस्टॉल, अनइंस्टॉल, सूची, कंटेंट ग्रुप |
| Device Manager | /api/devicemanager/ | पूर्ण पदानुक्रमित डिवाइस ट्री |
| Dump Collection | /api/debug/dump/ | लाइव प्रोसेस डंप, बगचेक डंप, क्रैश नियंत्रण |
| ETW | /api/etw/ | WebSocket पर रीयल-टाइम ETW, प्रोवाइडर एन्यूमरेशन |
| File Explorer | /api/filesystem/ | ब्राउज़, अपलोड, डाउनलोड, डिलीट, रीनेम |
| Networking | /api/networking/ | ipconfig |
| OS Information | /api/os/ | मशीन नाम, OS जानकारी |
| Performance | /api/resourcemanager/ | CPU/मेमोरी के साथ लाइव प्रोसेस सूची, सिस्टम परफॉरमेंस आँकड़े |
| Power | /api/power/ | बैटरी, पावर स्कीम, स्लीप स्टडी रिपोर्ट |
| Remote Control | /api/control/ | रीस्टार्ट, शटडाउन |
| Task Manager | /api/taskmanager/ | ऐप्स स्टार्ट/स्टॉप, प्रोसेस किल |
| Bluetooth | /api/bt/ | ऑडियो डिवाइस एन्यूमरेट, पेयर, कनेक्ट करें |
| WiFi | /api/wifi/ | इंटरफेस/नेटवर्क एन्यूमरेट, कनेक्ट, डिस्कनेक्ट |
| WER | /api/wer/ | Windows Error Reporting रिपोर्ट एन्यूमरेट और डाउनलोड करें |
| WPR | /api/wpr/ | WPR परफॉरमेंस ट्रेस स्टार्ट/स्टॉप/डाउनलोड, कस्टम प्रोफ़ाइल |
| फ़्लैग | प्रभावित एंडपॉइंट |
|---|
NoKernelDumps | लाइव कर्नेल डंप, बगचेक डंप डाउनलोड |
NoUserModeDumps | लाइव प्रोसेस डंप (PID द्वारा) |
NoBugcheckDumps | बगचेक डंप सूची/डाउनलोड/नियंत्रण |
NoWPRBootTracing | बूट-टाइम WPR ट्रेस |
NoPowerSchemeAccess | पावर स्कीम रीड/राइट |
| फ़ाइल | आकार | उद्देश्य |
|---|
RestDocumentation.json | 40KB | संपूर्ण मशीन-पठनीय REST API स्कीमा |
workspace-definitions.js | 26KB | पोर्टल वर्कस्पेस पैनल लेआउट (द्वितीयक API इंडेक्स) |
common-xbox.js | 21KB | बेस डिवाइस पोर्टल के ऊपर Xbox-विशिष्ट पोर्टल जोड़ |
common.js | 56KB | बेस डिवाइस पोर्टल फ्रेमवर्क |
toolhost.js | 7.8KB | टूल होस्टिंग परत |
rest.js | 19KB | REST कॉल निर्माण लाइब्रेरी |
d3.js | 570KB | D3 डेटा विज़ुअलाइज़ेशन |
konva.js | 676KB | कैनवास रेंडरिंग |
| PID | इमेज | उपयोगकर्ता | टिप्पणियाँ |
|---|
| 156 | (छिपा हुआ) | SYSTEM | 66MB वर्किंग सेट, कोई इमेज नाम दिखाई नहीं देता |
| 1456 | xbdiagservice.exe | SYSTEM | Xbox डायग्नोस्टिक्स सेवा |
| 1808 | EtwUploader.exe | SYSTEM | ETW टेलीमेट्री अपलोडर |
| 1832 | StorageManagement.exe | DefaultAccount | Xbox.StorageManagement UWP, IsRunning: false (निलंबित) |
| 1904 | ApplicationClipService.exe | SYSTEM | GameDVR क्लिप प्रबंधन, 37MB वर्किंग सेट |
| 2032 | xnetsharedservice.exe | SYSTEM | क्रॉस-पार्टीशन नेटवर्किंग ब्रिज |
| 2040 | NetworkTransferManagerService.exe | SYSTEM | Xbox कंटेंट डाउनलोड प्रबंधक |
| 2344 | WebManagement.exe | SYSTEM | डिवाइस पोर्टल वेब सर्वर |
| 2416 | XUpdMgr.exe | SYSTEM | Xbox अपडेट प्रबंधक |
| 2436 | PRProvisioningService.exe | NETWORK SERVICE | PlayReady प्रोविज़निंग सेवा |
| 2460 | XNetConfig.exe | SYSTEM | नेटवर्क कॉन्फ़िगरेशन |