Bayanin tasha emulators

Kalmomi kaɗan daga ofishin fassarar mu: yawanci kowa yana ƙoƙari ya fassara sabbin kayan aiki da wallafe-wallafe, kuma ba mu da banbanci. Amma tashoshi ba wani abu ne da ake sabunta sau ɗaya a mako ba. Sabili da haka, mun fassara muku wata kasida ta Antoine Beaupré, wanda aka buga a cikin bazara na 2018: duk da yawancin "shekarun" ta ka'idodin zamani, a cikin ra'ayinmu, kayan bai rasa mahimmancinsa ba kwata-kwata. Bugu da ƙari, wannan asalin jerin labarai ne guda biyu, amma mun yanke shawarar haɗa su zuwa babban matsayi ɗaya.

Bayanin tasha emulators

Tashoshi suna da matsayi na musamman a tarihin kwamfuta, amma a cikin 'yan shekarun nan an tilasta musu su rayu tare da layin umarni yayin da mu'amalar zane-zane ta zama ruwan dare. Ƙirar tasha sun maye gurbin nasu 'yan'uwa hardware, wanda, bi da bi, sun kasance gyare-gyaren tsarin da ya danganci katunan da aka buga da kuma masu juyawa. Rarraba na zamani ya zo tare da nau'ikan kwaikwaiyon tasha na kowane nau'i da launuka. Kuma yayin da mutane da yawa suna gamsuwa da daidaitaccen tasha wanda yanayin aikinsu ya samar, wasu suna alfahari da amfani da babbar manhaja don gudanar da harsashi ko editan rubutu da suka fi so. Amma, kamar yadda za mu gani daga wannan labarin, ba duk tashoshi an halicce su a cikin hoto ɗaya ba: sun bambanta sosai a cikin ayyuka, girman da aiki.

Wasu tashoshi suna da ramukan tsaro na ban mamaki, kuma yawancin suna da tsarin ayyuka daban-daban, tun daga goyan bayan abin dubawa zuwa rubutun rubutu. Ko da yake mu ya kalli masu kwaikwayar tasha a baya mai nisa, wannan labarin sabuntawa ne na abubuwan da suka gabata wanda zai taimaka wa masu karatu su tantance wane tashar da za a yi amfani da su a cikin 2018. Rabin farko na labarin ya kwatanta fasali, kuma rabi na biyu yana kimanta aikin.

Anan ga tashoshi da na duba:

Bayanin tasha emulators

Waɗannan ƙila ba su zama sabbin juzu'ai ba, tunda na iyakance ga ingantaccen gini a lokacin rubutu, wanda na sami damar fitar da Debian 9 ko Fedora 27. Banda kawai Alacritty. Zuriyar tashoshi ne na GPU-hanzari kuma an rubuta shi cikin sabon harshe da sabon harshe don wannan aikin - Tsatsa. Na cire tashoshin yanar gizo daga bita na (ciki har da waɗanda ke kan Electron), saboda gwaje-gwaje na farko sun nuna rashin aikinsu sosai.

Taimakon Unicode

Na fara gwaje-gwaje na da tallafin Unicode. Gwajin farko na tashoshi shine don nuna kirtan Unicode daga Labaran Wikipedia: "é, Δ, И, ק, م, ๗, あ, 叶, 葉 da 말." Wannan gwaji mai sauƙi yana nuna ko tashar zata iya aiki daidai a duk duniya. tashar xterm baya nuna harafin Larabci Mem a cikin tsohowar tsari:

Bayanin tasha emulators

Ta hanyar tsoho, xterm yana amfani da rubutun "kafaffen" na gargajiya, wanda, bisa ga har yanzu iri daya Vicki, yana da "tabbataccen ɗaukar hoto na Unicode tun 1997". Akwai wani abu da ke faruwa a cikin wannan font ɗin da ke sa harafin ya bayyana azaman firam ɗin da ba komai kuma sai lokacin da aka ƙara rubutun rubutu zuwa maki 20+ ne daga ƙarshe harafin ya fara nunawa daidai. Koyaya, wannan “gyara” yana karya nunin wasu haruffa Unicode:

Bayanin tasha emulators

An ɗauki waɗannan hotunan kariyar kwamfuta a cikin Fedora 27, saboda yana ba da sakamako mafi kyau fiye da Debian 9, inda wasu tsofaffin sigogin tashoshi (musamman mlterm) ba su iya sarrafa fonts yadda yakamata. An yi sa'a an gyara wannan a cikin sigogin baya.

Yanzu lura da yadda ake nuna layin a xterm. Ya bayyana cewa alamar Mem da Semitic mai zuwa qofa koma zuwa rubutun salon RTL (dama-zuwa-hagu), don haka a zahiri ya kamata a nuna su daga dama zuwa hagu. Masu binciken gidan yanar gizo irin su Firefox 57 suna sarrafa layin da ke sama daidai. Mafi sauƙaƙan rubutun RTL shine kalmar ".А .а" in Hebrew (yi). Shafin Wiki akan rubutun ra'ayi biyu yana cewa:

“Yawancin shirye-shiryen kwamfuta ba za su iya nuna rubutu na gaba ɗaya daidai ba. Alal misali, sunan Ibrananci "Sarah" ya ƙunshi haruffan zunubi (ש) (wanda ya bayyana a dama), sa'an nan kuma resh (ר) kuma a ƙarshe ya (ה) (wanda ya kamata ya bayyana a hagu)."

Yawancin tashoshi sun faɗi wannan gwajin: Alacritty, VTE-derived Gnome da XFCE tashoshi, urxvt, st da xterm nuni "Sara" a juye-juye, kamar dai mun rubuta sunan a matsayin "Aras".

Bayanin tasha emulators

Wata matsalar da ke tattare da rubutun bidirection shine cewa suna buƙatar daidaita su ko ta yaya, musamman idan ana batun haɗa rubutun RTL da LTR. Rubutun RTL ya kamata su gudana daga gefen dama na taga tasha, amma menene ya kamata ya faru ga tashoshi waɗanda suka sabawa LTR Turanci? Yawancinsu ba su da wata hanya ta musamman kuma suna daidaita duk rubutu zuwa hagu (ciki har da Konsole). Keɓancewar su ne pterm da mlterm, waɗanda ke bin ƙa'idodi da daidaita daidaitattun layukan.

Bayanin tasha emulators

Kariyar shigar

Siffa mai mahimmanci na gaba da na gano ita ce kariyar shigar da ita. Ko da yake an san cewa ana yin sihiri kamar:

$ curl http://example.com/ | sh

umarni ne na turawa na kisa, mutane kaɗan ne suka san cewa ɓoyayyun umarnin na iya shiga cikin na'ura wasan bidiyo lokacin yin kwafi da liƙa daga mai binciken gidan yanar gizo, koda bayan an bincika a hankali. Shafin tabbatarwa Gianna Horna a haƙiƙa yana nuna yadda umarnin ba shi da lahani:

git clone git: //git.kernel.org/pub/scm/utils/kup/kup.git

ya zama irin wannan tashin hankali idan an liƙa daga gidan yanar gizon Horn zuwa cikin tasha:

git clone /dev/null;
    clear;
	echo -n "Hello ";
	whoami|tr -d 'n';
	echo -e '!nThat was a bad idea. Don'"'"'t copy code from websites you don'"'"'t trust! 
	Here'"'"'s the first line of your /etc/passwd: ';
	head -n1 /etc/passwd
	git clone git://git.kernel.org/pub/scm/utils/kup/kup.git

Ta yaya yake aiki? An haɗa lambar mugunta a cikin toshe , wanda aka cire daga kallon mai amfani ta amfani da CSS.

Yanayin manna mai maƙalli an tsara shi a fili don kawar da irin waɗannan hare-haren. A cikin wannan yanayin, tashoshi suna haɗa rubutun da aka liƙa a cikin jerin nau'ikan tsere na musamman don gaya wa harsashi game da asalin rubutun. Wannan yana gaya wa harsashi cewa zai iya yin watsi da haruffa na musamman waɗanda rubutun da aka liƙa zai iya ƙunshi. Duk tashoshi zuwa xterm mai daraja suna goyan bayan wannan fasalin, amma liƙa a cikin Yanayin Maƙala yana buƙatar goyan baya daga harsashi ko aikace-aikacen da ke gudana akan tasha. Misali, amfani da software Karatun GNU (Bash iri ɗaya), yana buƙatar fayil ~/.inputrc:

set enable-bracketed-paste on

Abin takaici, gidan gwajin Horn kuma yana nuna yadda ake ƙetare wannan kariyar ta hanyar tsara rubutun kanta kuma da wuri ya ƙare da amfani da yanayin Bracketed zuwa gare shi. Wannan yana aiki saboda wasu tashoshi ba sa tace jerin tserewa daidai kafin ƙara nasu. Misali, a cikin tawa ban taba samun nasarar kammala gwaje-gwajen Konsole ba har ma da daidaitaccen tsari .inputrc fayil. Wannan yana nufin cewa a sauƙaƙe zaku iya lalata tsarin tsarin ku saboda aikace-aikacen da ba ya goyan bayan ko wani harsashi da ba daidai ba. Wannan yana da haɗari musamman lokacin shiga cikin sabar mai nisa, inda aikin daidaitawa a hankali ba ya zama gama gari, musamman idan kuna da irin waɗannan na'urori masu nisa da yawa.

Kyakkyawan maganin wannan matsala shine kayan aikin tabbatar da manna don tashar karwan, wanda kawai ke neman izini don saka duk wani rubutu da ya ƙunshi sabbin layukan. Ban sami mafi amintaccen zaɓi don harin rubutun da Horn ya kwatanta ba.

Shafuka da bayanan martaba

Shahararren fasalin yanzu shine goyan baya ga keɓaɓɓen dubawa, wanda za mu ayyana azaman tagar tasha ɗaya mai ɗauke da ƙarin tashoshi da yawa. Wannan aikin ya bambanta don tashoshi daban-daban, kuma kodayake tashoshi na xterminal na gargajiya ba sa goyan bayan shafuka kwata-kwata, ƙarin ingantattun tasha na zamani kamar Xfce Terminal, GNOME Terminal da Konsole suna da wannan aikin. Urxvt kuma yana goyan bayan shafuka, amma kawai idan kuna amfani da plugin. Amma dangane da goyan bayan shafin kanta, Terminator shine jagorar da ba a jayayya ba: ba kawai yana goyan bayan shafuka ba, amma kuma yana iya tsara tashoshi a kowane tsari (duba hoton da ke ƙasa).

Bayanin tasha emulators

Wani fasali na Terminator shine ikon "rukuni" waɗannan shafuka tare da aika maɓallan maɓalli iri ɗaya zuwa tashoshi masu yawa a lokaci guda, samar da ɗanyen kayan aiki don aiwatar da ayyuka masu yawa akan sabar da yawa a lokaci guda. Hakanan ana aiwatar da irin wannan fasalin a Konsole. Don amfani da wannan fasalin a wasu tashoshi, dole ne ku yi amfani da software na ɓangare na uku kamar Ƙungiya SSH, xlax ko tmux.

Shafukan suna aiki da kyau idan aka haɗa su tare da bayanan martaba: misali, zaku iya samun shafi ɗaya don imel, wani don taɗi, da sauransu. Wannan yana da goyon bayan Konsole Terminal da GNOME Terminal. Dukansu suna ba da damar kowane shafin don ƙaddamar da bayanan martaba ta atomatik. Har ila yau, Terminator yana goyan bayan bayanan martaba, amma na kasa samun hanyar ƙaddamar da wasu shirye-shirye ta atomatik lokacin da aka buɗe takamaiman shafin. Sauran tashoshi ba su da manufar “profile” kwata-kwata.

Ruffles

Abu na karshe da zan rufe a kashi na farko na wannan labarin shine bayyanar tashoshi. Misali GNOME, Xfce da urxvt suna goyan bayan bayyana gaskiya, amma kwanan nan sun bar goyan bayan hotuna na baya, suna tilasta wasu masu amfani su canza zuwa tashar. Tilix. Da kaina, Ina farin ciki da shi kuma yana da sauƙi Bayanai, wanda ke saita saitin tushe na launuka na baya don uxvt. Koyaya, jigogi masu launi marasa daidaituwa kuma na iya haifar da matsaloli. Misali, An ba da izini ba ya aiki tare da aikace-aikace htop и IPTraf, tunda sun riga sun yi amfani da nasu launuka.

Tashar tashar VT100 ta asali ba su goyi bayan launuka ba, kuma sababbi galibi ana iyakance su zuwa palette mai launi 256. Ga masu amfani masu ci gaba waɗanda ke yin salon tashoshi, faɗakarwar harsashi ko sandunan matsayi a cikin hadaddun hanyoyi na iya zama iyakancewa mai ban haushi. Gist waƙoƙi waɗanne tashoshi suna da tallafin "Launi na Gaskiya". Gwaje-gwaje na sun tabbatar da cewa st, Alacritty da tashoshi na tushen VTE suna tallafawa Launi na Gaskiya daidai. Sauran tashoshi ba su da kyau sosai a wannan batun kuma, a zahiri, ba sa ma nuna launuka 256. A ƙasa zaku iya ganin bambanci tsakanin goyon bayan Launi na Gaskiya a cikin tashoshin GNOME, st da xterm, waɗanda ke yin aiki mai kyau na wannan tare da palette ɗin launi na 256, da urxvt, wanda ba kawai ya gaza gwajin ba, har ma yana nuna wasu haruffa masu kyalkyali maimakon su.

Bayanin tasha emulators

Wasu tashoshi kuma suna nazarin rubutu don tsarin URL don sanya hanyoyin haɗin yanar gizo za su danna. Wannan ya shafi duk tashoshi da aka samo daga VTE, yayin da urxvt yana buƙatar filogi na musamman wanda zai canza URLs akan dannawa ko ta amfani da gajeriyar hanyar madannai. Sauran tashoshi na gwada nunin URL ta wasu hanyoyi.

A ƙarshe, sabon salo a cikin tashoshi shine zaɓin buffer gungurawa. Misali, st ba shi da buffer gungurawa; ana ɗauka cewa mai amfani zai yi amfani da m multiplexer kamar tmux da GNU allo.

Hakanan Alacritty ba shi da maƙallan baya, amma za a kara da wuri goyon bayan sa saboda "fadi mai yawa" akan wannan batu daga masu amfani. Baya ga waɗannan upstarts, kowane tashar da na gwada cewa zan iya samun goyan bayan juyawa.

Ƙarfafa bayanai

A kashi na biyu na kayan (A cikin asali waɗannan labarai ne daban-daban guda biyu - kusan. layi) za mu kwatanta aiki, amfani da ƙwaƙwalwar ajiya da latency. Amma mun riga mun ga cewa wasu daga cikin tashoshin da ake magana a kai suna da nakasu sosai. Misali, masu amfani waɗanda ke aiki akai-akai tare da rubutun RTL na iya son yin la'akari da mlterm da pterm, saboda sun fi sauran ayyuka iri ɗaya. Konsole ma ya taka rawar gani. Masu amfani waɗanda ba sa aiki tare da rubutun RTL na iya zaɓar wani abu dabam.

Dangane da kariya daga shigar da lambar mugun nufi, urxvt ya yi fice saboda aiwatar da shi na musamman na kariya daga irin wannan harin, wanda da alama ya dace da ni. Ga masu neman wasu kararrawa da busa, Konsole ya cancanci a duba. A ƙarshe, yana da mahimmanci a lura cewa VTE kyakkyawan tushe ne don tashoshi, wanda ke ba da garantin tallafin launi, ƙwarewar URL, da sauransu. A kallo na farko, tsohuwar tashar tashar da ta zo tare da yanayin da kuka fi so na iya biyan duk buƙatun, amma bari mu bar wannan tambayar a buɗe har sai mun fahimci aikin.

Mu ci gaba da tattaunawa


Gabaɗaya, aikin tashoshi a cikin kansa na iya zama kamar matsala ce mai nisa, amma kamar yadda ta bayyana, wasu daga cikinsu suna nuna rashin jinkiri mai ban mamaki ga software na irin wannan nau'in asali. Har ila yau, za mu dubi abin da ake kira "gudun" a al'ada (a gaskiya, wannan shine saurin gungurawa) da kuma amfani da ƙwaƙwalwar ajiyar tashar (tare da faɗakarwa cewa wannan ba shi da mahimmanci a yau kamar yadda yake da shekarun da suka wuce).

Jinkirtawa

Bayan na yi nazari sosai kan aikin tasha, na yanke shawarar cewa mafi mahimmancin ma'auni a wannan batun shine latency (ping). A cikin labarinsa "Muna bugawa da jin daɗi" Pavel Fatin ya duba jinkirin editocin rubutu daban-daban kuma ya yi nuni da cewa tasha a wannan batun na iya zama a hankali fiye da masu gyara rubutu da sauri. Wannan alamar ita ce ta kai ni ga gudanar da gwaje-gwaje na da rubuta wannan labarin.

Amma menene latency, kuma me yasa yake da mahimmanci? A cikin labarin nasa, Fatin ya bayyana shi a matsayin "jinkirin da ke tsakanin danna maɓalli da sabuntawar allon da ya dace" kuma ya faɗi. "Jagora ga Mu'amalar Dan Adam da Kwamfuta", wanda ya ce: " Jinkirin da ake samu na ra'ayoyin gani a kan nunin kwamfuta yana da tasiri mai mahimmanci ga hali da kuma gamsuwa."

Fatin ya bayyana cewa wannan ping yana da sakamako mai zurfi fiye da gamsuwa kawai: "Bugawa yana zama a hankali, ƙarin kurakurai suna faruwa, kuma tashin hankali na ido da tsoka yana ƙaruwa." A wasu kalmomi, babban jinkiri na iya haifar da typos da kuma ƙananan ingancin lambar, saboda yana haifar da ƙarin nauyin hankali akan kwakwalwa. Amma abin da ya fi muni shi ne ping "yana ƙara yawan ido da tsoka," wanda da alama yana nufin ci gaban raunin sana'a nan gaba (A bayyane yake, marubucin yana nufin matsaloli tare da tsokoki na idanu, baya, makamai da kuma, ba shakka, hangen nesa - kimanin. layi) saboda yawan damuwa.

Wasu daga cikin waɗannan tasirin an san su na dogon lokaci, da sakamakon bincike, wanda aka buga a baya a cikin 1976 a cikin mujallar Ergonomics, ya ce jinkiri na millise seconds 100 "yana lalata saurin bugawa." Kwanan nan, GNOME Jagoran Mai amfani ya gabatar lokacin amsawa mai karɓa a cikin millise seconds 10, kuma idan kun ci gaba, to Binciken Microsoft ya nuna cewa millisecond 1 ya dace.

Fatin ya gudanar da gwaje-gwajensa akan masu gyara rubutu; ya kirkiro wani kayan aiki mai motsi da ake kira Ma'aunin rubutuwanda na yi amfani da shi don gwada ping a cikin masu kwaikwayon tashoshi. Ka tuna cewa an gudanar da gwajin a cikin yanayin siminti: a gaskiya, muna buƙatar la'akari da shigarwar duka biyu (keyboard, USB control, da dai sauransu) da fitarwa (buffer katin bidiyo, saka idanu) latency. A cewar Fatin, a cikin tsari na yau da kullun yana da kusan 20 ms. Idan kuna da kayan wasan caca, zaku iya cimma wannan adadi a cikin milli seconds 3 kacal. Tun da mun riga mun sami irin wannan kayan aiki mai sauri, aikace-aikacen ba dole ba ne ya ƙara latency ɗinsa. Burin Fatin shine ta kawo jinkirin aikace-aikacen zuwa miliyon 1, ko ma cimma bugu ba tare da jinkiri mai aunawa, yaya a ciki IntelliJ IDEA 15.

Ga sakamakon ma'auni na, da kuma wasu daga cikin sakamakon Fatin, don nuna cewa gwajin da na yi ya dace da gwaje-gwajensa:

Bayanin tasha emulators

Abu na farko da ya buge ni shine mafi kyawun lokacin amsa tsofaffin shirye-shirye kamar xterm da mlterm. Tare da mafi munin jinkirin rajista (2,4 ms), sun yi aiki mafi kyau fiye da mafi sauri na zamani (10,6 ms don st). Babu tasha ta zamani da ta faɗo ƙasa da madaidaicin millisecond 10. Musamman ma, Alacritty ya kasa cika da'awar "mafi saurin kwaikwaiyon tashar jiragen ruwa", kodayake makinsa ya inganta tun farkon bita a cikin 2017. Lalle ne, marubutan aikin sanin halin da ake ciki kuma suna aiki don inganta nuni. Hakanan ya kamata a lura cewa Vim ta amfani da GTK3 tsari ne na girma a hankali fiye da takwaransa na GTK2. Daga wannan zamu iya yanke shawarar cewa GTK3 yana haifar da ƙarin latency, kuma wannan yana nunawa a cikin duk sauran tashoshi masu amfani da shi (Terminator, Xfce4 Terminal da GNOME Terminal).

Duk da haka, bambance-bambancen bazai iya ganewa ga ido ba. Kamar yadda Fatin ta bayyana, "ba lallai ne ku san jinkirin ba don ya yi tasiri a kanku." Fatin kuma yayi kashedin game da daidaitaccen karkata: "duk wani hargitsi a cikin latency (jitter) yana haifar da ƙarin damuwa saboda rashin hasashensu."

Bayanin tasha emulators

An ɗauki hoton da ke sama akan tsantsar Debian 9 (miƙe) tare da i3 Manager taga. Wannan yanayin yana samar da sakamako mafi kyau a cikin gwaje-gwajen latency. Kamar yadda ya fito, GNOME yana ƙirƙirar ƙarin ping 20 ms don duk ma'auni. Mahimman bayani game da wannan shine kasancewar shirye-shirye tare da sarrafa abubuwan shigar da abubuwa tare. Fatin ta ba da misali ga irin wannan harka Aiki, wanda ke ƙara jinkiri ta hanyar sarrafa duk abubuwan shigar da su tare. Ta hanyar tsoho, GNOME kuma yana zuwa tare da mai sarrafa taga uwar, wanda ke haifar da ƙarin Layer na buffering, wanda ke shafar ping kuma yana ƙara akalla 8 milliseconds na latency.

Bayanin tasha emulators

Saurin gungurawa

Gwaji na gaba shine gwajin "gudun gudu" ko "bandwidth" na gargajiya, wanda ke auna yadda saurin tashar zai iya gungurawa shafi yayin da yake nuna adadi mai yawa akan allon. Makanikai na gwajin sun bambanta; ainihin gwajin shine kawai don samar da zaren rubutu iri ɗaya ta amfani da umarnin seq. Sauran gwaje-gwajen sun haɗa da gwajin Thomas E. Dickey (mai kula da xterm), wanda akai-akai an zazzage fayil ɗin terminfo.src. A cikin wani bita na aikin tasha Da Lu yana amfani da rufaffen kirtani na tushe32 na bazuwar bytes, wanda ake fitarwa zuwa tashar ta amfani da cat. Luu yana ɗaukar irin wannan gwajin a matsayin "kamar maƙasudin mara amfani kamar yadda mutum zai iya tunani" kuma yana ba da shawarar yin amfani da amsa ta ƙarshe azaman ma'auni na farko maimakon. Dickey kuma ya kira gwajin nasa yaudara. Koyaya, duka marubutan biyu sun yarda cewa bandwidth na taga na ƙarshe na iya zama batun. Luu ya gano Emacs Eshell yana daskarewa lokacin da yake nuna manyan fayiloli, kuma Dickey ya inganta tashar don kawar da sluggish na gani na xtrerm. Don haka har yanzu akwai wasu cancantar wannan gwajin, amma tunda tsarin aiwatarwa ya sha bamban da na tasha zuwa tasha, ana iya amfani da shi azaman bangaren gwaji don gwada wasu sigogi.

Bayanin tasha emulators

Anan muna ganin rxvt da st sun ja gaban gasar, sai kuma sabon Alacritty, wanda aka tsara tare da mai da hankali kan wasan kwaikwayo. Na gaba su ne Xfce (VTE iyali) da Konsole, waɗanda kusan sau biyu suke sauri. Na ƙarshe shine xterm, wanda shine sau biyar a hankali fiye da rxvt. A yayin gwajin, xterm shima yaci karo da yawa, wanda hakan ya sa rubutun wucewa ke da wahalar gani koda layi daya ne. Konsole yana da sauri, amma yana da wayo a wasu lokuta: nunin zai daskare lokaci zuwa lokaci, yana nuna ɓangaren rubutu ko baya nuna shi kwata-kwata. Sauran tashoshi sun nuna kirtani a sarari, gami da st, Alacritty, da rxvt.

Dickey ya bayyana cewa bambance-bambancen wasan kwaikwayon ya samo asali ne saboda ƙirar maƙallan gungura a tashoshi daban-daban. Musamman ma, yana zargin rxvt da sauran tashoshi da "rashin bin ƙa'idodin gama gari":

"Ba kamar xterm ba, rxvt bai yi ƙoƙarin nuna duk abubuwan sabuntawa ba. Idan ya faɗi a baya, zai ƙi wasu sabuntawa don cim ma. Wannan yana da babban tasiri akan saurin gungurawa a bayyane fiye da ƙungiyar ƙwaƙwalwar ajiyar ciki. Ɗaya daga cikin koma baya shine cewa ASCII animation ɗin ba shi da kyau. "

Don gyara wannan jinkirin xterm, Dickey ya ba da shawarar amfani da albarkatun saurin Gungurawa, ƙyale xterm ya watsar da wasu sabuntawar allo don ci gaba da gudana. Gwaje-gwaje na sun tabbatar da cewa saurin gungurawa yana inganta aiki kuma yana kawo xterm daidai da rxvt. Wannan shi ne, duk da haka, ƙaƙƙarfan ƙira, kamar yadda Dickey da kansa ya bayyana: "wani lokaci xterm - kamar konsole - yana da alama yana tsayawa yayin da yake jiran sabon saitin sabunta allo bayan an cire wasu." A wannan yanayin, da alama sauran tashoshi sun sami mafi kyawun daidaitawa tsakanin saurin gudu da amincin nuni.

Amfanin albarkatu

Ko da kuwa ko yana da ma'ana don yin la'akari da saurin gungurawa azaman ma'aunin aiki, wannan gwajin yana ba mu damar yin kwatankwacin kaya akan tashoshi, wanda hakan yana ba mu damar auna wasu sigogi kamar ƙwaƙwalwar ajiya ko amfani da faifai. An samo ma'aunin ta hanyar gudanar da ƙayyadadden gwajin seq karkashin Python tsarin kulawa. Ya tattara bayanan mita zagi() to ru_maxrss, adadin ru_oublock и ru_inblock da mai saurin lokaci.

Bayanin tasha emulators

A cikin wannan gwajin, ST yana ɗaukar wuri na farko tare da matsakaicin matsakaicin matsakaicin ƙwaƙwalwar ajiya na 8 MB, wanda ba abin mamaki bane idan aka yi la'akari da cewa babban ra'ayin ƙirar shine sauƙi. mlterm, xterm da rxvt suna cinye kadan kadan - kusan 12 MB. Wani sanannen sakamako shine Alacritty, wanda ke buƙatar 30 MB don gudu. Sannan akwai tashoshi na dangin VTE masu adadi daga 40 zuwa 60 MB, wanda yake da yawa. Ana iya bayyana wannan amfani ta hanyar cewa waɗannan tashoshi suna amfani da manyan ɗakunan karatu, misali, GTK. Konsole ya zo a karshe tare da 65MB na yawan amfani da ƙwaƙwalwar ajiya yayin gwaje-gwaje, kodayake ana iya tabbatar da hakan ta hanyar fasali da yawa.

Idan aka kwatanta da sakamakon baya da aka samu shekaru goma da suka wuce, duk shirye-shiryen sun fara cinye ƙwaƙwalwar ajiya a hankali. Xterm yana buƙatar 4 MB, amma yanzu yana buƙatar 15 MB kawai a farawa. Akwai irin wannan karuwar amfani ga rxvt, wanda yanzu yana buƙatar 16 MB daga cikin akwatin. Xfce Terminal yana ɗaukar 34 MB, wanda ya fi girma sau uku a baya, amma GNOME Terminal yana buƙatar 20 MB kawai. Tabbas, duk gwaje-gwajen da suka gabata an yi su akan gine-ginen 32-bit. A LCA 2012 Rusty Russell ya gaya, cewa akwai wasu dalilai masu hankali da yawa waɗanda zasu iya bayyana karuwar yawan ƙwaƙwalwar ajiya. Bayan mun faɗi haka, yanzu muna rayuwa a lokacin da muke da gigabytes na ƙwaƙwalwar ajiya, don haka za mu sarrafa ko ta yaya.

Duk da haka, ba zan iya taimakawa ba sai dai jin cewa ware ƙarin ƙwaƙwalwar ajiya ga wani abu mai mahimmanci kamar tashar tashar ɓata albarkatu ne. Wadannan shirye-shiryen ya kamata su kasance mafi ƙanƙanta daga cikin mafi ƙanƙanta, ya kamata su iya yin aiki akan kowane "akwatin", ko da akwatin takalma, idan mun zo wurin da suke buƙatar samar da tsarin Linux (kuma kun san cewa zai kasance haka). ) . Amma tare da waɗannan lambobi, amfani da ƙwaƙwalwar ajiya zai zama matsala a nan gaba a kowane yanayi da ke gudana tashoshi da yawa ban da ƴan mafi sauƙi kuma mafi ƙayyadaddun iyawa. Don rama wannan, GNOME Terminal, Konsole, urxvt, Terminator da Xfce Terminal suna da yanayin Daemon wanda ke ba ku damar sarrafa tashoshi da yawa ta hanyar tsari guda, yana iyakance amfani da ƙwaƙwalwar ajiya.

Bayanin tasha emulators

A lokacin gwaje-gwaje na, na zo ga wani sakamakon da ba zato ba tsammani game da karatun faifai: Ina tsammanin ba zan ga komai a nan ba, amma ya zama cewa wasu tashoshi suna rubuta mafi yawan bayanai zuwa faifai. Don haka, ɗakin karatu na VTE a zahiri yana riƙe da buffer gungurawa akan faifai (wannan fasalin An lura da baya a cikin 2010, kuma har yanzu wannan yana faruwa). Amma ba kamar tsoffin aiwatarwa ba, yanzu aƙalla an ɓoye wannan bayanan ta amfani da AES256 GCM (daga 0.39.2). Amma tambaya mai ma'ana ta taso: menene na musamman game da ɗakin karatu na VTE wanda yake buƙatar irin wannan tsarin da ba daidai ba don aiwatarwa ...

ƙarshe

A kashi na farko na labarin, mun gano cewa tashoshi na tushen VTE suna da kyakkyawan tsarin fasali, amma yanzu mun ga cewa wannan yana zuwa tare da wasu farashin aiki. Yanzu ƙwaƙwalwar ajiya ba batun bane saboda duk tashoshin VTE ana iya sarrafa su ta hanyar tsarin Daemon, wanda ke iyakance sha'awar su. Koyaya, tsofaffin tsarin da ke da gazawar jiki akan adadin RAM da kernel buffers na iya har yanzu suna buƙatar sigogin tashoshi na farko, tunda suna cinye albarkatu kaɗan. Kodayake tashoshi na VTE sun yi kyau a cikin gwaje-gwajen kayan aiki (gungurawa), lat ɗin nunin su yana sama da madaidaicin da aka saita a cikin Jagorar Mai amfani na GNOME. Wataƙila masu haɓaka VTE yakamata suyi la'akari da wannan. Idan muka yi la'akari da cewa har ma ga masu amfani da Linux novice sun haɗu da tasha ba makawa, za su iya sa ya zama abokantaka mai amfani. Don ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ƙwararrun ma'ana na iya haifar da ƙarancin ƙarancin ido da kuma ikon guje wa raunin da ke da alaƙa da aiki a nan gaba saboda zaman aiki mai tsawo. Abin baƙin ciki, kawai tsohon xterm da mlterm ya kawo mu zuwa madaidaicin ping ɗin sihiri na millise seconds 10, wanda ba shi da karbuwa ga mutane da yawa.

Hakanan ma'aunin ma'auni ya nuna cewa saboda haɓakar mahallin hoto na Linux, masu haɓakawa sun yi sulhu da yawa. Wasu masu amfani na iya son kallon manajojin taga na yau da kullun yayin da suke samar da raguwar ping. Abin takaici, ba zai yiwu a auna latency don Wayland ba: shirin Typometer da na yi amfani da shi an halicce shi don abin da aka tsara Wayland don hana: leken asiri akan wasu windows. Ina fatan hadawa na Wayland ya fi X.org, kuma ina fatan nan gaba wani zai sami hanyar auna latency a cikin wannan muhallin.

source: www.habr.com

Add a comment