निष्क्रिय उपयोगकर्ता सत्र में ऑटो-पॉज़िंग प्रक्रियाओं को कैसे रोकें?


14

अब थोड़ी देर के लिए जब मैं दो उपयोगकर्ता सत्रों के बीच स्विच करता हूं तो कुछ मामलों में निष्क्रिय एक जीयूआई प्रक्रियाओं को निष्पादित करना बंद कर देगा। इस तरह मैं एक और सत्र के लोड होने का इंतजार करने के लिए मजबूर हूं और किसी दूसरे में कुछ नहीं कर सकता, क्योंकि अगर मैं स्विच करता हूं और थोड़ी देर बाद वापस आता हूं तो यह उसी बिंदु पर होता है। प्रभावित सॉफ्टवेयर में rsync, rdiff-backup, KDE पृष्ठभूमि प्रक्रियाएं, Openbox सत्र में स्टीम (यहां तक ​​कि स्टॉप डाउनलोड करना) और कम से कम कुछ गेम शामिल हैं। VLC प्रभावित नहीं है, कम से कम मैं वापस स्विच करने के बाद समय की जरूरत के लिए रुक जाता हूं, लेकिन एक पल के लिए मैं पुराने फ्रेम और समय को विंडो में देख सकता हूं।

ऐसे व्यवहार के लिए कौन सी प्रक्रिया जिम्मेदार है? क्या मैं इसे किसी तरह फिर से कॉन्फ़िगर कर सकता हूं?

अद्यतन: मेमोरी और स्वैप उपयोग

कुछ अतिरिक्त संदर्भ: विडंबना यह है कि मैंने पुराने बुद्धिशीलता पर इस सटीक व्यवहार का सुझाव दिया है ।ubuntu.com (अब अशुद्ध)।


1
@ पूरी तरह से, यह एक स्वैप समस्या की तरह नहीं दिखता है अगर यह है कि आप क्या मतलब है।
int_ua

2
हाँ, यह वही है जो मैं लागू कर रहा था ... ;-) मैंने आपके द्वारा अनुभव किए जा रहे व्यवहार को अनुकरण करने की कोशिश की है: एक उपयोगकर्ता के रूप में लॉग ऑन करें, फिर एक माध्यमिक उपयोगकर्ता के रूप में लॉग ऑन करें, एक फिल्म शुरू करें, [Ctrl] [Alt ] [F7] पहले उपयोगकर्ता के लिए, एक findऑन शुरू करें, /[ctrl] [Alt] [F8] दूसरे उपयोगकर्ता को और सब कुछ चलता रहता है ... (हालांकि उपयोगकर्ताओं को स्विच करते समय फिल्म की ध्वनि मौन होती है।) कैसे करते हैं। आप परीक्षण?
फेबी जूल

1
@int_ua मुझे विशेष रूप से भाप के बारे में नहीं पता है, लेकिन मेरे पास ऐसे गेम हैं जिनमें उपयोगकर्ताओं को स्विच करते समय रोक दिया जाने वाला विशिष्ट कोड है ... मैं केडीई का उपयोग नहीं करता हूं, इसलिए मुझे लगता है कि मैं आपकी कोई मदद नहीं कर सकता ... क्षमा करें!
फाबबी

1
किसी अन्य उपयोगकर्ता पर स्विच करने से पहले और बाद में आउटपुट स्थिति को ध्यान में रखते हुए और दूसरे सत्र के दौरान एक बाहरी एचडीडी प्रकाश द्वारा सभी गतिविधि को सक्रिय करते हुए।
int_ua

2
के लिए rsyncप्रयोग कर रहे हैं verboseप्रगति मुद्रित करने के लिए? क्या आपने इसके बिना कोशिश की है + क्या आपने इसे सीधे पृष्ठभूमि में भेजने की कोशिश की है rsync .... &? कैसे के बारे में nohup rsync .... & ? जीयूआई के लिए उन्हें निलंबित करना चाहिए क्योंकि केवल एक आउटपुट संसाधन है और यह किसी अन्य उपयोगकर्ता सत्र द्वारा लिया जाता है और वे विराम देंगे
:)

जवाबों:


1

मैं इस समस्या में भी भागता हूं क्योंकि मैं नियमित आधार पर कंसोल और ग्राफिकल वर्चुअल टर्मिनलों के बीच स्विच करता हूं। डिजाइन द्वारा Xorg VT स्विच के दौरान अपने ग्राहकों को निलंबित कर देता है, यही कारण है कि जब Xorg का VT सक्रिय नहीं होता है तो उसके ग्राहक "फ्रीज" करने लगते हैं। वेलैंड नहीं करता है, इसलिए यदि आपको पृष्ठभूमि वीटी में चलने वाले कार्यक्रमों को नए प्रदर्शन प्रोटोकॉल का समर्थन करने की आवश्यकता है, तो एक्सगोर के बजाय वायलैंड कंपोजिटर का उपयोग करें।

इस समस्या के आसपास काम करने का एक तरीका स्थानीय वीएनसी सर्वर पर चित्रमय कार्यक्रम चलाना है ताकि वे कभी निलंबित न हों। यह वह वर्कअराउंड है जिसका मैं सबसे अधिक उपयोग करता हूं।


0

ऐसे व्यवहार के लिए कौन सी प्रक्रिया जिम्मेदार है?

प्रदर्शन प्रबंधक (DM) वह है जिसे आप खोज रहे हैं। सभी लोग: lightdm, gdm, kdm(पुराने केडीई), sddm(नई केडीई), xdm...

क्या मैं इसे किसी तरह फिर से कॉन्फ़िगर कर सकता हूं?

AFAIK, एक्स सर्वर के साथ ऐसा ही होना चाहिए। हालाँकि, मैंने उस व्यवहार का उपयोग करते हुए छोड़ दिया:

  • एक और वर्चुअल कंसोल TTY पर CLI टूल
  • initसेवा के रूप में सीएलआई उपकरण

ऑडियो स्ट्रीम के बारे में, जब मैंने 2006 में GNU / Linux का उपयोग शुरू किया था। ऑडियो डिवाइस डिस्प्ले से अलग से प्रबंधित किए गए थे। अब, नए विशेष उपकरणों / एचडीएमआई जैसे बंदरगाहों के साथ चीजें बहुत बदल गईं। तो पल्स सर्वर को कुछ एक्स डिस्प्ले इवेंट के बारे में पता होना चाहिए। जैसा कि मुझे याद है (मैं इसे रीचेक करूंगा), पल्स सर्वर को यूजर प्रोसेस के रूप में चलाया जाता है।


क्या आप पहले बिंदु को साबित कर सकते हैं? कोड में यह वास्तव में कैसे या कहाँ है? बहुत सारी स्थितियां हैं जहां TTY में CLI एक विकल्प नहीं है और डाउनलोड और बैकअप वास्तविक समस्या है, ऑडियो एक मामूली समस्या है।
int_ua

0

आप screenसीएलआई से बैश के साथ एक सत्र शुरू कर सकते हैं और इस सत्र के अंदर आप आवेदन शुरू कर सकते हैं। और अब आप समस्याओं के बिना इस टर्मिनल को बंद कर सकते हैं और screen -rकमांड का उपयोग करके पुनर्प्राप्त कर सकते हैं । कमोबेश यही है:

screen bash
rsync -V xxx yyy

और आप सीएलआई को बंद कर सकते हैं और जो चाहें वापस कर सकते हैं और कर सकते हैं:

screen -r

पुष्टि करने के लिए नौकरी की जाती है। मुझे नहीं पता कि यह GUI ऐप्स के साथ कमांड की तरह काम कर सकता है जैसे:

nohup your-X-application &
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.