Sistem comun de imprimare Unix

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Sistem comun de imprimare unix
software
Siglă
Sigla proiectului
Sigla proiectului
Tip Spooler pentru imprimantă
Dezvoltator Compania Apple.
Data primei versiuni 9 iunie 1999
Ultima versiune 2.3.3 (27 aprilie 2020)
Sistem de operare Linux
Unix-like
macOS
Limba C.
C ++
Set de instrumente Interfață utilizator web
Licență Licență publică generală GNU
Licență publică generală mai mică GNU
( licență gratuită )
Site-ul web www.cups.org

Common Unix Printing System ( CUPS ) este un spooler de imprimare modular pentru sistemele de operare de tip Unix, care permite unui computer să funcționeze ca un server de imprimare eficient.

Un computer care rulează CUPS poate accepta tipăriri de pe alte computere client , le poate procesa și le poate trimite la imprimanta necesară. Sistemul constă dintr-un spooler / programator , un filtru care convertește datele de imprimare primite într-un format acceptat de imprimantă și un modul care trimite datele procesate către dispozitivul de imprimare. Se bazează pe protocolul de imprimare pe Internet (IPP) pentru a gestiona trimiterea de date și cozile de imprimare. Are o interfață de linie de comandă similară cu cea a sistemului V și a sistemului de imprimare Berkeley , precum și suport limitat pentru protocolul Server message block (SMB). Interfața cu driverele se bazează pe formatul PostScript Printer Description (PPD).

CUPS poate fi gestionat și configurat cu una dintre numeroasele interfețe grafice disponibile pentru diferitele platforme software sau prin interfața web integrată.

Istorie

Michael Sweet fondatorul Easy Software Products a început să dezvolte CUPS în 1997. Prima versiune publică a fost lansată în 1999. [1] Proiectarea inițială a CUPS a implicat utilizarea protocolului LPD , dar limitările LPD și incompatibilitățile sale au împins Sweet să o folosească. Internet Printing Protocol (IPP). CUP-urile au fost utilizate rapid ca sistem de imprimare implicit de multe distribuții Linux, cum ar fi Red Hat . În martie 2002 Apple Computer a decis să utilizeze CUPS ca sistem de imprimare pentru macOS începând cu versiunea 10.2 [2] În februarie 2007 Apple. Inc a decis să cumpere codul sursă pentru proiect și să îl angajeze pe Sweet ca lider de proiect. [3]

Detaliu operațiune

Cupe remake.PNG

Datele sunt trimise către un planificator, care la rândul său le trimite la filtru, care le convertește într-un format potrivit pentru imprimantă. Sistemul de filtrare transmite datele astfel pregătite către o interfață ( back end ) care trimite datele direct la imprimanta locală sau printr-o conexiune de rețea.
Procesul de filtrare utilizează limbajul PostScript ca limbaj intermediar între datele originale de imprimat și formatul trimis imprimantei.

Principalul avantaj al CUPS este că este un sistem modular și standard , prin urmare capabil să funcționeze cu numeroase formate de date și să interfețe cu numeroasele modele de imprimante de pe piață, fiecare capabil să accepte un anumit format sau limbă.

Prin comparație, sistemele de imprimare System V sau sistemele de imprimare Berkeley sunt incompatibile între ele și necesită o configurație elaborată pentru a gestiona diferite formate de date și imprimante. În general, aceștia nu pot recunoaște cu exactitate formatul datelor primite prin efectuarea incorectă a conversiei. O altă limitare este că conversia poate avea loc numai pe computerul client și nu pe server.

CUPS facilitează dezvoltarea de drivere care funcționează nativ pe serverul de imprimare Unix . După efectuarea conversiei, imprimarea poate fi trimisă cu ușurință prin alte sisteme de imprimare Unix. În plus, datorită protocolului Samba , serviciul de imprimare este accesibil și din sistemele Windows .

Planificatorul

Planificatorul are sarcina de a gestiona lucrările care sunt tipărite, prioritatea în coadă (ordinea în care sunt trimise la dispozitiv), anularea eventuală a acestora etc.
În acest scop, folosește Internet Printing Protocol (IPP), care la rândul său se bazează pe HTTP . Planificatorul acceptă solicitările în format HTTP / 1.1 și oferă o interfață web pentru gestionarea și configurarea serverului, precum și furnizarea de documentație privind utilizarea acestuia.

Planificatorul include un modul de autorizare care controlează accesul mesajelor IPP și HTTP, care odată autorizate sunt trimise către modulul client, care îndeplinește solicitările. Acest modul execută, de asemenea, procesele CGI externe necesare funcțiilor interfeței web. Mesajele de răspuns sunt trimise înapoi la modulul IPP care le trimite la validarea adresei URL , pentru a preveni încercările de a ocoli autentificarea. Autorizarea utilizatorului este organizată de imprimantă și de clasă. O clasă este o grupare de mai multe imprimante pe care planificatorul trimite tipărirea autorizată ajungând la primul dispozitiv gratuit. Un modul de lucru gestionează coada fiecărei imprimante și trimite datele către filtre și backend-uri, gestionând și mesajele returnate de acestea.

Planificatorul include un modul de configurare care se bazează pe fișierul de configurare CUPS la pornirea sistemului. Un alt modul (modul de înregistrare ) se ocupă de înregistrarea (înregistrarea) tuturor evenimentelor de sistem, accesări, erori, lucrări. Modulul principal al planificatorului se ocupă de gestionarea comunicațiilor cu clienții și coordonarea diferitelor module descrise.

Alte module utilizate sunt modulul MIME care gestionează tipurile MIME și baza de date utilizată de filtre pentru conversia datelor. Un modul PPD care gestionează lista de fișiere cu date de descriere a imprimantei Postscript , un modul care menține o listă de dispozitive disponibile și module care gestionează imprimante individuale.

Filtrul

În centrul CUPS se află capacitatea de a converti mai multe formate de date primite în formate adecvate pentru diferite imprimante.
Acest lucru se face pe server printr-o serie de pași intermediari. Recunoașterea datelor primite se efectuează utilizând sistemul de tip MIME ( Multipurpose Internet Mail Extensions ). Acesta este un standard utilizat pe Internet pentru compunerea e-mailurilor, dar este utilizat în mod obișnuit pentru a determina natura unui fișier .

Baza de date MIME

Când CUPS este pornit, sunt încărcate două fișiere de baze de date : mime.types și mime.convs .
mime.types conține o listă de formate de fișiere pe care CUPS le poate accepta, în timp ce mime.convs asociază fiecare tip MIME cu programul care îl poate procesa.

Fișierul mime.types are următoarea sintaxă:

 mimetype {[extensii] | [potrivire de model]}

De exemplu, dacă doriți să recunoașteți un fișier HTML, puteți adăuga codul:

 text / html html htm \
     imprimabil (0,1024) + (șir (0, "<HTML>") șir (0, "<! DOCTYPE"))

În acest exemplu, prima linie conține numele tipului MIME și extensiile caracteristice ale fișierului. A doua linie conține o serie de instrucțiuni care conduc la recunoașterea fișierului ca fiind format pentru primul kilobyte de caractere imprimabile care includ un șir caracteristic marcajului HTML. Dacă fișierul îndeplinește aceste caracteristici, este marcat ca text MIME / html .

Fișierul mime.convs are sintaxa:

 programul de greutate la destinație de origine

Câmpul sursă este tipul MIME obținut anterior, destinația definește formatul pe care doriți să-l scoateți, greutatea determină gradul de prioritate pentru două filtre similare și programul este numele programului care va fi utilizat pentru conversie.

Un exemplu de mime.convs este următorul:

 text / aplicație simplă / postscript 50 de topuri text
application / vnd.cups-postscript application / vnd.cups-raster 50 pstoraster
image / * application / vnd.cups-postscript 50 imagetops
image / * application / vnd.cups-raster 50 imagetoraster

Procesul de filtrare

Modulul de filtrare necesită șase parametri de intrare:

  • numele cozii de imprimare sau al filtrului
  • numărul de identificare al lucrării de tipărire
  • numele utilizatorului care deține jobul
  • numele postului
  • numărul de copii de imprimat
  • orice opțiuni, inclusiv numele fișierului sursă, dacă nu este intrarea standard

Tipul de fișier este recunoscut prin intermediul bazei de date MIME și programul de conversie adecvat este selectat în consecință; de exemplu, o imagine este procesată diferit decât un fișier HTML sau PDF .

Datele pot fi convertite în PostScript sau direct în date raster (reprezentarea pixel cu pixel a imaginii de tipărit). Dacă se utilizează PostScript, este necesar un prefiltru care trimite datele către un convertor PostScript ulterior. În acest pas, puteți specifica opțiuni precum gama de pagini care urmează să fie tipărite, ordinea de imprimare, colaționare etc.
După „prefiltrare”, datele pot urma una din cele trei căi:

  • accesați direct backend-ul, în cazul în care imprimanta acceptă PostScript
  • treceți printr-un alt filtru, de exemplu foomaticul linuxprinting.org
  • să fie convertit de Ghostscript într-un fișier raster intermediar specific CUPS (tip MIME application / vnd.cups-raster ). Formatul raster intermediar este trimis la un filtru final care îl convertește în formatul raster specific pentru imprimanta utilizată.

CUPS include raster standard la PCL , raster la ESC / P sau ESC / P2 (un limbaj Epson înlocuit acum de ESC / P-Raster) și raster la filtre Dymo.

Există multe alte alternative care pot fi utilizate cu CUPS. Soluțiile Easy Software Printing (ESP), creatorul CUPS, și-au dezvoltat propriile filtre: Gimp-Print este o serie de drivere de înaltă calitate, potrivite pentru multe imprimante cu jet de cerneală. Turbo-Print pentru Linux este o altă serie de drivere pentru o gamă largă de imprimante.

Capetele din spate

Capetele din spate sunt interfețele finale care trimit date către imprimante individuale. Diferite tipuri de interfețe sunt gestionate de CUPS: port paralel, port serial , USB , sisteme de rețea IPP, protocoale JetDirect , LPD și SMB.

Notă

  1. ^ Michael Sweet (9 iunie 1999), „Un viitor nou și luminos pentru tipărirea pe Linux” , Linux Today & followup de la Michael Sweet (11 iunie 1999), „The Future Brightens for Linux Printing” , Linux Today .
  2. ^ Produse software ușoare , CUPS licențiate pentru utilizare în sistemele de operare Apple! Arhivat la 20 iulie 2006 la Internet Archive , 1 martie 2002.
  3. ^ "CUPS", CUPS Achiziționat de Apple Inc. Arhivat 15 iulie 2007 la Internet Archive ., 11 iulie 2007.

Alte proiecte

linkuri externe

Software gratuit Free Software Portal : accesați intrările Wikipedia care se ocupă cu software-ul liber