Makara baskı için ne anlama geliyor?


18

Mark benim için bir yorum yazdı

Kupaların biriktirilmemesini, yani lpr komutunun sadece yazıcı sürücüsü çalıştıktan sonra nasıl çıkacağını bilmiyorum.

Yazdırma için "makara" ne demektir?

Google, "ara bir mağazaya gönderme (çevre bir aygıtta yazdırma veya işleme amaçlı veri)" anlamına gelen bir fiil olduğunu söylüyor. Örneğin yazdırma lprkomutu ile yazdırırken, yazdırma makarasının temsil ettiği ara depo nedir?

Mark, makaranın anlamını engelleme ile ilişkilendiriyor gibi görünüyor. Ancak Google tarafından verilen tanıma bakarak bunu anlayamıyorum.

Teşekkürler.

Yanıtlar:


12

Bir baskı makarası etkin bir program sunma ve bir veya daha fazla yazıcılara bunları besleyen işlerini almak için sorumlu bir program (biriktirici) ile iş başına yönetilen bir tampon, vardır. Bir biriktirmenin amacı, farklı hızlara sahip iki sistem arasındaki iletişimi ele almak ve paylaşılan cihazlara erişimi kontrol etmektir. Önceki, programların yazdırma işlerini istedikleri kadar hızlı gönderebileceği ve bu işlerin, yazıcıların işleyebileceği kadar hızlı (veya yavaş) işleneceği anlamına gelir. İkincisi (aynı sivri dışarı ile RonJohn ) o işler tutarlı işlenir sağlar: basarken böylece işler karışık değildir.

Ağa bağlı yazıcılar kendi makaralarını sağlar ve yazdırma sunucuları (CUPS, lpdvb.) Da makaraları uygular. Çoğu yazdırma sistemi aynı zamanda erişim kontrolü, kotalar, afişler, yazdırma seçenekleri vb. İle de çalışır. Makaralar diğer bağlamlarda kullanılır; örneğin, teyp tabanlı yedekleme sunucuları artık hızlı bir disk tabanlı depolama sisteminde ağa bağlı ana bilgisayarlardan yedekleme verilerini biriktirir, böylece daha sonra teyp pabucunun parlamasını önlemek için ihtiyaç duydukları muazzam hızlarda modern teyp sürücülerini besleyebilirler.

Yorum bağlamında, bir makaranın alaka düzeyi, baskı işi sunumunu yerine getirilmesinden ayırmasıdır. Biriktirmenin olmaması, gönderimin yalnızca yazdırma işiyle tamamlanacağı anlamına gelir ve bu nedenle lprkomutunuz yalnızca iş tamamlandığında tamamlanır. Bilgisayardaki makarayı çıkarmak da istenen sonucu vermeyebilir çünkü yazıcının kendisi de biriktirebilir!


1
"Biriktirme" anlamının hangi kısmı, Linux çekirdeğinin IO arabelleği için geçerli değil?
Tim

3
Posta sistemi genellikle altında /var/spool/mailveya benzeri bir yerde bir posta biriktiricisi kullanır . Bu aynı zamanda, e-posta mesajlarının eşzamansız yakın gönderilmesine izin veren bir "arabellektir". Posta iletisi biriktirilir / kuyruğa alınır ve posta istemcisinin postanın sistemden gerçekten çıkmasını beklemesi gerekmez. Bir baskı işi gibi.
Kusalananda

1
@Tamamen bunun uygulanabilir olup olmadığı sorusu değil, sadece biriktirme denmiyor. Arabellekler genellikle arabelleğe beslenen işlemlerin engellenmemesine neden olur: writeVeriler gerçekte hedefine ulaştığında değil, veri her hangi tampon belleğe yazılır tamamlanmaz (Linux'ta sayfa önbelleği) tamamlanır. readmutlaka engellemeyebilir ve istenenden daha az veri döndürebilir.
Stephen Kitt

1
Ayrıca, "farklı hızlara sahip iki sistem arasındaki iletişimi" ele almanın yanı sıra, makaraların bu daha yavaş cihazlara erişimi seri hale getirdiğini de unutmayın . (Birden fazla işin aynı anda yazıcıya veya modeme yazmasının ne kadar kötü olacağını hayal edebilirsiniz ...)
RonJohn

1
Yazdırma makaraları, baskı sunucusunun bulunduğu her yerde diskte depolanır. Yazıcıların kendi makaralarına da sahip olabileceğini söylediğimde, bu normalde “ağa bağlı” yazıcılar için geçerlidir (belirli bir bilgisayara değil bir ağa bağlıdır); kendi yazdırma sunucularını barındırırlar ve birden fazla gelen işi (kendi makaralarına sahip olarak yaptıkları) yönetmeleri gerekir. Bir yazıcının kendi makarası varsa, yazdırma işlerini yazdırılabileceğinden çok daha hızlı kabul edebilir, bu nedenle lpryazıcının işi kabul etmesini beklese bile, tamamen işlenmeden önce hala gecikme olur.
Stephen Kitt

36

Özetle, bir biriktirici şunlardan oluşur:

  • bir arka plan programı
  • yazıcı başına bir dizin
  • yazdırma işi başına bir dosya

Sizin durumunuzda, ön plan programı ( lpr) yazdırma işlerini gönderir cups, bu da depolar ve yazdırma işlemini gerçekten başlatmak için seri, paralel, USB, ağ, ... iletişimini kullanır.

Bu yüzden bugünlerde yazıcıda kağıt bittiğinde bile bilgisayarınızı kullanmaya devam edebilirsiniz, oysa CP / M'de çocukken, daha fazla kağıt ekleyene kadar tüm bilgisayar kilitlendi ...

Neden "biriktirme" denir?

Çünkü o zamanlar büyük bilgisayarlar bu tür dosyaları diskler çok pahalı olduğu için saklamak için bant kullandılar, bu nedenle veri merkezinin içinde çalışırken ilk duyacağınız bantlar dönmeye başladı starting ve sadece bir saniye sonra 3-4 yazıcı yazdırmaya başlar (eğer şanslıysanız). ;-)

Not 1: "Makara", "manyetik bandın sarılabileceği silindirik bir cihaz" anlamına gelen bir isimdir, bu nedenle "makaralama", bandı döndüren ve saran silindirik cihazdır ...


5
Daha doğrudan, "biriktirme", "manyetik bandın sarılabileceği silindirik bir cihaz" anlamına gelen bir isimdir
Monica'ya

1
@OrangeDog: cevaba dahil, teşekkürler! :-)
Fabby

2
+1 "Makara" teriminin nereden geldiğini asla bilmiyordum.
Joe

@Joe Bugünlerde çocuklar bir Disket / Disket / Stiffy / ... > :-)
Fabby

5

İlk olarak, “biriktirme” teriminin anlamı ile başlayalım: bazen bir belgenin boyutu yazıcının belleğinden daha büyüktür, bu nedenle “yazıcı biriktirme” bir yazıcıya birden çok belge gönderilmesini ve tüm bu belgeleri sıraya koymanızı sağlar.

Şimdi, Unix altında iki baskı sistemi var:

  1. BSD biriktirme sistemi lpdyazdırma işlerini zamanlamak için arka plan programı kullanır .
  2. SVR4 bekletme sistemi lpschedzamanlayıcı olarak kullanılır.

Jeff Lessem'in USAIL: Unix sistem yönetiminden bağımsız öğrenmenin , Unix altında Yazdırma konusunda hem BSD hem de SVR4 sistemlerine iyi bir genel bakış sağlayan bir bölümü vardır :

BSD biriktirme sistemi

birçok bilgisayarın yazıcıları paylaşmasına olanak tanıyan büyük, heterojen ağlara kadar uzanır.

BSD bekletme sistemi altında yazıcılara erişim lpd daemon ve lprprogram tarafından kontrol edilir . lprBSD sistemindeki dosyaları yazdırılmak üzere kuyruğa alabilen tek programdır.

lpryazdırılacak verileri kabul eder, bir biriktirme dizinine koyar ve lpdarka plan programına bildirir . Her yazdırma işi için, lprbiriktirme dizininde, benzersiz bir iş kimliğini gösteren xxx adlı bir kontrol dosyası (cfxxx) ve bir veri dosyası (dfxxx) oluşturur. Kontrol dosyası, sahibinin kimliği de dahil olmak üzere yazdırma işini yürütmek için bilgiler içerir. Veri dosyası yazdırılacak gerçek verileri içerir.

lpdDaemon denetler /etc/printcaphedef yazıcıyı tanımlamak için dosyayı. Hedef yazıcı yerel bir aygıtsa, bu yazdırma kuyruğunda arka plan programının lpdbir kopyasının lpdçalıştığından emin olun . Aksi takdirde lpd, yazıcının bağlı olduğu uzak ana bilgisayara bir bağlantı açar ve hem kontrol hem de veri dosyasını ona aktarır.

Yazdırma işleri lpd, İlk Giren İlk Çıkar (FIFO) esasına göre zamanlanır . Ancak, sistem yöneticisi yazdırma kuyruğundaki işlerin önceliğini değiştirmek için lpc komutunu kullanabilir.

SVR4 bekletme sistemi Solaris ve HP-UX tarafından kullanılır. Daha fazla kontrol ve esneklik sunar, ancak ağ üzerinden yazdırma için tasarlanmamıştır ve kurulumu daha karmaşıktır.

SVR4 biriktirme sistemi altında, lpkomut yazdırılacak verileri kabul eder, hedefle ilişkili biriktirme dizininde bir kopyasını oluşturur. Hedef, bir yazıcı adı ve yazıcının ait olduğu sınıfın isteğe bağlı bir belirtiminden oluşur. Belirtilen yazıcı meşgul olduğunda, iş aynı sınıftaki başka bir yazıcıya gönderilir. Biriktirme dizini normalde /var/spool/lp/request/printer-nameve yazdırma dosyasına hem işi hem de kullanıcıyı tanımlamak için benzersiz bir ad verilir.

Yazıcıya erişim lpscheddaemon tarafından kontrol edilir . İşleri biriktirme dizininden alır ve kullanılabilir olduğunda uygun hedefe gönderir. lpsched ayrıca genellikle bir günlük tutar /usr/spool/lp/log. Günlük dosyası, yazdırma işlerinin yanı sıra kullanıcı adının işlenmesindeki herhangi bir hatayı,

Ayrıca bkz: Yazıcılar ve yazıcı biriktiricisi - lp, lpstat ve iptal komutları | BT Blogu için İpuçları


3
Kaynaklarından bahsetmek güzel ...
Stephen Kitt

Henüz bitirmedim ;-)

3
Hangi metnin size ait olduğunu ve hangisinin alıntılandığını netleştirmek için Markdown biçimlendirmesini kullanmanızı öneririm. Orijinal yazar Jeff Lessem'e de unix.stackexchange.com/help/referencing
Anthony G - adalet için

4

Unutulmamalıdır ki MAKARA için kullanılan bir kısaltmadır S imultaneous P pass yaması olduğu belgelenmiş O perations O , n L ine. Hesaplamanın ilk (ancak en erken değil) günlerinden bu yana, işlemciler sonuçları yazıcıların yazdırabildiğinden daha hızlı üretti. Biriktirme olmadan, işlemci, yazdırma işlemi bitene kadar bir "yazdırma işi" ni tamamlayamadı. Bu genellikle boş bir işlemciyle sonuçlandı ve yazıcıyı bekledi.

Amerikan uzay programı sırasında biriktirmede büyük bir sıçrama oldu. Bilgisayarlar çok yavaş sonuç üretiyordu, bu yüzden sadece NASA için yeni bir biriktirme sistemi yazıldı (ancak tüm IBM sistemleri bunlara sahip olana kadar popülerliği arttı). Bu adlandırılan H OUSTON bir utomatic S havuzu P hale rogram kilit köprüsü ilk iç içe kısaltma.

Biriktirme işlemine iyi bir benzerlik bir iplik fabrikasıdır - iplik hızlı bir şekilde döndürülür ve - başka bir yerde - bir makara üzerine depolanır. Daha sonra iplik makarası, daha sonra, daha düşük bir hızda çalışan ve bitmiş bir ürün oluşturmak için kullanılan bir dikişe veya başka bir makineye konur.


17
"Biriktirme" türetmesinin yaygın olarak bir backronym olarak kabul edildiğine ve "PDQ" nun kesinlikle olduğuna dikkat edin.
chrylis -on strike-

6
Açıkçası bu olaydan sonra inşa edilmiş bir backronym. Bu tür söylentileri yaymak bir heves haline geliyor. Bunların birçoğu burada listeleniyor , belki de ona "biriktirme" ekleme zamanı!
boru

4
@Jennifer IBM kesinlikle SPOOL adında bir programa sahip olsa da, yukarıdaki Jargon Dosyası bağlantısında olduğu gibi, bu adı ya bir tür punto olarak seçtikleri ya da mevcut bir terimden türettikleri yaygın olarak tahmin edilmektedir. Her iki durumda da, muhtemelen işleri bir kaset makarasına yüklemeyi ve sonra bunları oynatmayı ifade eder. Modern kullanımda, ne eski bir IBM ürününe ne de bir bant makarasına atıfta bulunur, bu nedenle tüm tartışma, bugün ne anlama geldiğine dair oldukça akademik ve teğettir.
IMSoP

3
@Jennifer Eh, insanlar tahmin etmekte yanlış olsa bile, yaygın olarak varsayıldığından yanılmıyorum. IBM'in bu terimi icat ettiği doğru olsa bile, neden bu kelimeleri seçtiler? Uzun el yazdılar ve sonra "ah, bu bir tesadüf, İngilizce bir kelime yazıyor" dediler mi - yoksa işlevsellik için uygun görünen bir terim arıyorlardı ve "işleri biriktirmek" teyp "iyi bir görüntü müydü?
IMSoP

4
Bu yazı, özellikle etimolojik iddiaları nedeniyle alıntılardan büyük fayda sağlayacaktır.
TemporalWolf

3

Biriktirme oldukça eski bir okul dönemidir. Günümüzde "Yazdırma Kuyruğu" nun daha sık kullanıldığını göreceksiniz.

Kuyrukta İngiliz, “sırada beklemek” der. Yani yazdırma işleri "kuyruğa alınır", yani yazdırmak için sırada bekler.

Bir iş biriktirmeyi bitirdikten sonra (yazdırma çizgileri arasında uzun "düşünme" süreleri olabilir), daha sonra genellikle FIFO bazında yazdırılır, ancak Yazdırma İşi önceliği bunu geçersiz kılabilir.

Operatörlerin kağıt değiştirmesi için yazdırma makaraları ve kuyrukları duraklatılabilir. Bazı sayfalar hasar gördüyse de yeniden başlatılabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.