Common Unix Printing System

Common unix printing system
software
Logo
Logo
Logo del progetto
Logo del progetto
Logo del progetto
GenerePrinter spooler
SviluppatoreApple Inc.
Data prima versione9 giugno 1999
Ultima versione2.4.11 (30 settembre 2024)
Sistema operativoLinux
Unix-like
macOS
LinguaggioC++
C
Toolkitweb user interface
LicenzaGNU General Public License
GNU Lesser General Public License
(licenza libera)
Sito webopenprinting.github.io/cups/

Il Common Unix Printing System (CUPS) è un spooler di stampa modulare per sistemi operativi di tipo Unix che permette ad un computer di funzionare come un efficace print server.

Un computer con CUPS in esecuzione è in grado di accettare stampe da altri computer client, elaborarle ed inviarle alla stampante richiesta. Il sistema è costituito da uno spooler/scheduler, un filtro che converte i dati di stampa ricevuti in un formato accettato dalla stampante ed un modulo che invia i dati elaborati al dispositivo di stampa. Si basa sull'Internet Printing Protocol (IPP) per gestire l'invio dei dati e le code di stampa. Dispone di interfaccia a riga di comando simile a quella del System V e del Berkeley printing system, oltre ad un limitato supporto per il protocollo Server message block (SMB). L'interfacciamento con i driver si basa sul formato PostScript Printer Description (PPD).

La gestione e configurazione di CUPS può essere effettuata con una delle molteplici interfacce grafiche disponibili per le diverse piattaforme software oppure attraverso l'interfaccia web integrata.

Storia

Michael Sweet fondatore della Easy Software Products iniziò a sviluppare CUPS nel 1997. La prima versione pubblica venne distribuita nel 1999.[1] Il progetto iniziale di CUPS prevedeva l'utilizzo del protocollo LPD, ma le limitazioni di LPD e le sue incompatibilità spinsero Sweet a utilizzare il protocollo Internet Printing Protocol (IPP). CUPs venne rapidamente utilizzato come sistema di stampa di default da molte distribuzioni Linux come Red Hat. Nel marzo 2002 Apple Computer decise di utilizzare CUPS come sistema di stampa per il macOS a partire dalla versione 10.2[2] Nel febbraio 2007 Apple. Inc decise di acquistare il codice sorgente del progetto e di assumere Sweet come capo progetto.[3]

Dettaglio del funzionamento

I dati sono inviati ad uno scheduler, che li manda a sua volta al filtro, il quale li converte in un formato adatto alla stampante. Il sistema di filtraggio passa i dati così preparati ad un'interfaccia (back end) che invia i dati direttamente alla stampante locale oppure su una connessione di rete.
Il processo di filtraggio utilizza il linguaggio PostScript come linguaggio intermedio tra il dato originale da stampare ed il formato inviato alla stampante.

Il principale vantaggio di CUPS è di essere un sistema modulare e standard, in grado quindi di operare con numerosi formati di dati e interfacciarsi con i numerosi modelli di stampanti presenti sul mercato, ciascuna in grado di accettare un formato o un linguaggio specifico.

Per confronto i sistemi di stampa del System V o il Berkeley printing systems sono incompatibili tra loro e richiedono una elaborata configurazione per gestire diversi formati di dati e stampanti. In genere non sono in grado di riconoscere accuratamente il formato dei dati ricevuti eseguendo la conversione in modo errato. Un altro limite è che la conversione può avvenire solo sul computer client e non sul server.

Con CUPS è molto più facile sviluppare driver in grado di funzionare nativamente sul print server Unix. Una volta effettuata la conversione la stampa può essere facilmente inviata attraverso gli altri sistemi di stampa Unix. Inoltre grazie al protocollo Samba il servizio di stampa è accessibile anche da sistemi Windows.

Lo scheduler

Lo scheduler ha il compito di gestire i lavori in stampa, la priorità nella coda (l'ordine con cui sono inviati alla periferica), la loro eventuale cancellazione ecc.
Per questo scopo utilizza il protocollo Internet Printing Protocol (IPP), a sua volta basato sull'HTTP. Lo scheduler accetta le richieste in formato HTTP/1.1 e fornisce una interfaccia web per la gestione e la configurazione del server, oltre che per fornire documentazione sul suo uso.

Lo scheduler include un modulo di autorizzazione che controlla l'accesso dei messaggi IPP e HTTP, che una volta autorizzati sono inviati al modulo client, che soddisfa le richieste. Questo modulo esegue anche i processi CGI esterni necessari per le funzioni dell'interfaccia web. I messaggi di risposta sono reinviati al modulo di IPP che li sottopone alla validazione dell'URL, per prevenire tentativi di aggiramento dell'autenticazione. L'autorizzazione degli utenti è organizzata per stampante e per classe. Una classe è un raggruppamento di diverse stampanti su cui lo scheduler invia la stampa autorizzata in arrivo alla prima periferica libera. Un modulo di lavoro (job module) gestisce la coda di ogni stampante ed invia i dati ai filtri e ai backend, gestendo inoltre i messaggi restituiti da questi.

Nello scheduler è compreso un modulo di configurazione che attinge al file di configurazione di CUPS all'avvio del sistema. Un altro modulo (logging module) si occupa di registrare (loggare) tutti gli eventi di sistema, accessi, errori, lavori. Il modulo principale dello scheduler si occupa di gestire le comunicazioni con i client e coordinare i diversi moduli descritti.

Altri moduli utilizzati sono il modulo MIME che gestisce i tipi MIME e il database utilizzato dai filtri per la conversione dei dati. Un modulo PPD che gestisce la lista dei file con i dati Postscript Printer Description, un modulo che mantiene una lista delle periferiche disponibili e moduli che gestiscono le singole stampanti.

Il filtro

Il cuore di CUPS è la capacità di convertire i molteplici formati di dati in entrata nei formati adatti alle diverse stampanti.
Questa operazione viene fatta sul server attraverso una serie di passaggi intermedi. Il riconoscimento dei dati ricevuti è effettuato utilizzando il sistema dei tipi MIME (Multipurpose Internet Mail Extensions). Questo è uno standard usato su Internet per la composizione delle e-mail ma è comunemente impiegato per determinare la natura di un file.

Il database MIME

Quando CUPS è avviato vengono caricati due file database: mime.types e mime.convs.
mime.types contiene un elenco dei formati di file che CUPS può accettare, mentre mime.convs associa ciascun tipo MIME con il programma in grado di elaborarlo.

Il file mime.types ha la sintassi seguente:

mimetype      { [estensioni] | [pattern-matching] }

Per esempio, volendo riconoscere un file HTML si può aggiungere il codice:

text/html       html htm \
     printable(0,1024) + (string(0,"<HTML>") string(0,"<!DOCTYPE"))

In questo esempio la prima linea contiene il nome del tipo MIME e le estensioni caratteristiche del file. La seconda linea contiene una serie di istruzioni che portano a riconoscere il file come costituito per il primo kilobyte da caratteri stampabili in cui è compresa una stringa caratteristica del markup HTML. Se il file risponde a queste caratteristiche è contrassegnato come tipo MIME text/html.

Il file mime.convs ha la sintassi:

origine destinazione peso programma

Il campo origine è il tipo MIME ottenuto precedentemente, destinazione definisce il formato che si vuole in uscita, peso determina il grado di priorità per due filtri simili e programma è il nome del programma da utilizzare per la conversione.

Un esempio di mime.convs è il seguente:

text/plain application/postscript 50 texttops
application/vnd.cups-postscript application/vnd.cups-raster 50 pstoraster
image/* application/vnd.cups-postscript 50 imagetops
image/* application/vnd.cups-raster 50 imagetoraster

Il processo di filtraggio

Il modulo di filtraggio richiede in ingresso sei parametri:

  • il nome della coda di stampa o del filtro
  • il numero identificativo del lavoro di stampa
  • il nome dell'utente proprietario del lavoro
  • il nome del lavoro
  • il numero di copie da stampare
  • eventuali opzioni tra cui il nome del file di origine nel caso non sia lo standard input

Per mezzo del database MIME viene riconosciuto il tipo di file e scelto di conseguenza il programma di conversione appropriato; per esempio una immagine viene elaborata diversamente rispetto ad un file HTML o PDF.

I dati possono essere convertiti in PostScript oppure direttamente in dati raster (rappresentazione pixel per pixel dell'immagine da stampare). Se è impiegato il PostScript, è necessario un pre-filtro che invii i dati ad un successivo convertitore PostScript. In questo passaggio è possibile specificare opzioni come l'intervallo di pagine da stampare, l'ordine di stampa, la fascicolatura ecc.
Dopo il "prefiltraggio", i dati possono seguire una di queste tre vie:

  • andare direttamente al backend, nel caso la stampante accetti il PostScript
  • attraversare un altro filtro, per esempio il foomatic di linuxprinting.org
  • essere convertiti da Ghostscript in un file raster intermedio specifico di CUPS (tipo MIME application/vnd.cups-raster). Il formato raster intermedio è inviato ad un filtro finale che lo converte nel formato raster specifico per la stampante in uso.

In CUPS sono inclusi i filtri standard da raster a PCL, da raster a ESC/P o ESC/P2 (un linguaggio della Epson ora superato da ESC/P-Raster) e da raster a Dymo.

Esistono molte altre alternative utilizzabili con CUPS. La Easy Software Printing (ESP) Solutions, creatrice di CUPS, ha sviluppato propri filtri: Gimp-Print è una serie di driver di alta qualità adatto per molte stampanti ink-jet. Turbo-Print per Linux è un'altra serie di driver per una ampia gamma di stampanti.

I back end

I back end sono le interfacce finali che inviano i dati alle singole stampanti. Diversi tipi di interfacce sono gestite da CUPS: porta parallela, porta seriale, USB, sistemi di rete IPP, JetDirect, protocolli LPD e SMB.

Note

  1. ^ Michael Sweet (9 giugno, 1999), "A Bright New Future for Printing on Linux", Linux Today & followup from Michael Sweet (11 giugno, 1999), "The Future Brightens for Linux Printing", Linux Today.
  2. ^ Easy Software Products, CUPS Licensed for Use in Apple Operating Systems! Archiviato il 20 luglio 2006 in Internet Archive., 1º marzo, 2002.
  3. ^ "CUPS",CUPS Purchased by Apple Inc. Archiviato il 15 luglio 2007 in Internet Archive., 11 luglio 2007.

Altri progetti

Collegamenti esterni

  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero

Read other articles:

Chief diplomatic mission of the United Kingdom in the Russian Federation Embassy of the United Kingdom in MoscowLocationArbat District, MoscowAddress1 Lugansk People's Republic SquareCoordinates55°45′01″N 37°34′37″E / 55.75028°N 37.57694°E / 55.75028; 37.57694AmbassadorDeborah Bronnert CMGWebsiteOffice website The Embassy of the United Kingdom in Moscow is the chief diplomatic mission of the United Kingdom in the Russian Federation. It is located in the Arb...

 

Official currency of the United States of America USD redirects here. For other uses, see USD (disambiguation). United States dollarOne-dollar bill (obverse)ISO 4217CodeUSD (numeric: 840)Subunit0.01UnitSymbol$, US$, U$‎Nickname List Ace, bean, bill, bone, buck, deuce, dub, ducat, doubloon, fin, frog, greenback, large, simoleons, skins, smackeroo, smackers, spondulix, Tom, yard, and eagle Plural:dead presidents, green, bones, clams Based on denomination:Washingtons, Jeffersons, Linc...

 

Die United Nations War Crimes Commission (UNWCC) war eine Kommission alliierter Staaten zur Beweismittelsicherung und strafrechtlichen Ahndung von Kriegsverbrechen der Achsenmächte im Zweiten Weltkrieg, die am 20. Oktober 1943 in London gegründet wurde und bis Ende März 1948 bestand. Inhaltsverzeichnis 1 Aufgaben 2 Hintergrund 3 Far Eastern Commission 4 Literatur 5 Einzelnachweise Aufgaben Gründungsmitglieder waren diese 17 Nationen:[1] Vereinigte Staaten von Amerika, Großbr...

Etymology of placenames derived from Celtic languages This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Celtic toponymy – news · newspapers · books · scholar · JSTOR (June 2008) (Learn how and when to remove this template message) Map of Celtic-influenced regions of Europe, in dark green 1 and 2 : regions...

 

الدول حسب أفضل إنجاز في بطولة كأس العالم عدد مرات ظهور كل منتخب في نهائيات كأس العالم تُفصِّل هذه المقالة إنجازات الفرق الوطنية وترتيبها في كأس العالم لكرة القدم، حامل اللقب الحالي هو منتخب الأرجنتين الذي فاز على منتخب فرنسا في نهائي نسخة 2022، أما منتخب البرازيل فهو الأكثر ت

 

Ministry of the Netherlands Ministry of the Interior and Kingdom RelationsMinisterie van Binnenlandse Zaken en KoninkrijksrelatiesMinistry overviewFormed12 March 1798; 225 years ago (1798-03-12)JurisdictionKingdom of the NetherlandsHeadquartersTurfmarkt 147, The HagueEmployees3,000Annual budget€3,8 billion (2018)[1]Minister responsibleHugo de Jonge, Minister of the Interior and Kingdom RelationsDeputy Minister responsibleAlexandra van Huffelen, State Secretary for ...

LGBT films By decade 1896–1959 1895–1919 1920s 1930s 1940s 1950s 1960s 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970s 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980s 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990s 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000s 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010s 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020s 2020 2021 2022 2023 2024 vte This is a list of lesbian, gay, bisexual or transgender-r...

 

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目已列出參考文獻,但因為沒有文內引註而使來源仍然不明。 (2012年8月9日)请加上合适的文內引註来改善这篇条目。 此條目需要补充更多来源。 (2012年8月9日)请协助補充多方面可靠来源以改善这篇条目,无法查证的内容可能會因為异议提出而被移除。致使用者:请搜索一下条目的标题(来源搜索:...

 

MsabbahaNama lainMusabbaha, mashaushaSajianHidangan pembukaBahan utamaKacang arab, jintan putih, peterseli, perasan lemon Msabbaha (Arab: مسبحة, juga diromanisasikan menjadi musabbaha, artinya berenang) adalah sebuah variasi dari hummus yang populer di Levant.[1] Di Galilea, hidangan tersebut juga dikenal sebagai mashausha.[2] Referensi ^ Sufian Mustafa (June 2003). Sons of Hummus (PDF). This Week in Palestine. hlm. 43. Diarsipkan dari versi asli (PDF) tanggal 20...

Manga written by Garon Tsuchiya and Nobuaki Minegishi Old BoyCover to Vol. 1オールドボーイ―ルーズ戦記(Ōrudo Bōi Rūzu Senki)GenreAction[1]Psychological thriller[2] MangaWritten byGaron TsuchiyaIllustrated byNobuaki MinegishiPublished byFutabashaEnglish publisherNA: Dark Horse ComicsImprintAction ComicsMagazineManga ActionDemographicSeinenOriginal run1996 – 1998Volumes8 (List of volumes) Live-action films Oldboy (2003) Zinda (2006) Oldboy (2013)...

 

Japanese variety show Hiragana OshiJapanese nameKanjiひらがな推しLiteral meaningRooting for Hiragana GenreVariety showCreated byYasushi AkimotoPresented byAudrey (Toshiaki Kasuga, Masayasu Wakabayashi)StarringHiragana Keyakizaka46Narrated byYōhei AzakamiCountry of originJapanOriginal languageJapaneseNo. of episodes50ProductionRunning time30 min.Original releaseNetworkTV TokyoReleaseApril 9, 2018 (2018-04-09) –April 1, 2019 (2019-04-01)RelatedWhere is Nogizaka?Nogizaka ...

 

American lawyer (born 1961) Sheela MurthyBorn (1961-10-12) 12 October 1961 (age 62)Baroda, IndiaCitizenshipUnited StatesEducationHarvard Law SchoolOccupationAttorneySpouseVasant Nayak Sheela Murthy (born 12 October 1961) is a lawyer, entrepreneur, and philanthropist, perhaps best known as founder and president of the Owings Mills, Maryland based Murthy Law Firm, which has been ranked as one of the world's leading U.S. immigration law firms. A native of India, Murthy and her husband, phot...

Twin SistersPoster filmSutradara Ben Sombogaart ProduserDitulis oleh Tessa de Loo Marieke van der Pol PemeranThekla Reuten, Nadja Uhl, Ellen Vogel, Gudrun OkrasPenata musikFons MerkiesDistributorMiramax FilmsTanggal rilisNegara Belanda Bahasa Belanda Jerman Pendapatankotor$5,145,363 [1] Twin Sisters (Belanda: De Tweeling) adalah sebuah film Belanda 2002, yang disutradarai oleh Ben Sombogaart, berdasarkan pada novel The Twins karya Tessa de Loo, dengan sebuah permainan latar ...

 

2022 video gameAtelier Sophie 2: The Alchemist of the Mysterious DreamDeveloper(s)GustPublisher(s)Koei TecmoDirector(s)Yuki KatsumataMasaki SatoProducer(s)Junzo HosoiDesigner(s)Ryoji AonoProgrammer(s)Yuki WakizakaArtist(s)YuugenNOCOWriter(s)Genki TomimatsuYuya JinComposer(s)Kazuki YanagawaDaisuke AchiwaTatsuya YanoRyudai AbeSeriesAtelierPlatform(s)PlayStation 4Microsoft WindowsNintendo SwitchReleaseFebruary 24, 2022Genre(s)Role-playingMode(s)Single-player Atelier Sophie 2: The Alchemist of th...

 

La stele di Upuautemsaf in un disegno di E. A. Wallis Budge. La dinastia di Abido fu, secondo alcuni egittologi, un'effimera dinastia locale di sovrani i quali avrebbero regnato sul territorio di Abido, in Alto Egitto, durante il secondo periodo intermedio. L'esistenza di tale dinastia venne prima proposta da Detlef Franke nel 1988[1] e poi elaborata da Kim Ryholt nel 1997. Questa dinastia sorse intorno al 1650 a.C. in seguito al vuoto di potere lasciato dai faraoni della ormai defunt...

Dragana Tomašević Nazionalità  Serbia Altezza 175 cm Peso 80 kg Atletica leggera Specialità Lancio del disco Record Disco 63,63 m (2006) Peso 14,81 m (2004) Carriera Nazionale 2001-2002 Jugoslavia2004-2006 Serbia e Montenegro Palmarès Competizione Ori Argenti Bronzi Universiadi 0 0 2 Giochi del Mediterraneo 1 1 1 Per maggiori dettagli vedi qui Statistiche aggiornate al 16 marzo 2014 Modifica dati su Wikidata · Manuale Dragana Tomašević (Sremska Mitrovica, 4 giugno 1...

 

Bulgarian footballer Iliya Iliev Personal informationFull name Iliya Raychev IlievDate of birth (1974-12-20) 20 December 1974 (age 49)Place of birth Sofia, BulgariaHeight 1.76 m (5 ft 9+1⁄2 in)Position(s) MidfielderSenior career*Years Team Apps (Gls)1993–2000 Septemvri Sofia 103 (26)2000–2001 Litex Lovech 10 (0)2002 Spartak Varna 22 (3)2003 Terek Grozny 30 (3)2004–2006 Marek Dupnitsa 66 (4)2006–2008 Slavia Sofia 59 (7)2008 Lokomotiv Mezdra 15 (8)2009–2010 S...

 

Gunung SlametTitik tertinggiKetinggian3.432 m (11.260 ft)Puncak3.428 m (11.247 ft)Masuk dalam daftarRibuKoordinat7°14′30″S 109°12′30″E / 7.24167°S 109.20833°E / -7.24167; 109.20833 GeografiGunung SlametKabupatenBanyumasPurbalinggaPemalangTegalBrebesGeologiJenis gunungStratovolcano Gunung Slamet (Jawa: ꦒꦸꦤꦸꦁꦱ꧀ꦭꦩꦼꦠ꧀, translit. gunung slamet) adalah sebuah gunung berapi kerucut tipe A yang berada di Ja...

Rumah Sakit KatolikSt. Vincentius a PauloYayasan ArnoldusGeografiLokasiJl. Diponegoro No.51, Kota Surabaya, Jawa TimurOrganisasiJenisBSejarahDibuka3 Mei 1925Pranala luarSitus webwww.rkzsurabaya.com Rumah Sakit Katolik St. Vincentius a Paulo (dikenal juga dengan nama RKZ Surabaya) adalah sebuah rumah sakit di Surabaya, Jawa Timur. Rumah Sakit ini merupakan salah satu bentuk keterlibatan dan pelayanan Gereja Katolik kepada semua orang, khususnya yang sakit dan miskin. Nama Patung Yesus di taman...

 

一場於德國斯圖加特舉行的模擬聯合國會議 模擬聯合國(英語:Model United Nations,缩写MUN)是一種學術性質活動,藉由精簡後的聯合國議規舉行模擬會議,使與會者瞭解多邊外交的過程,培養分析公民議題的能力,促進世界各地學生的交流,增進演講和辯論能力,提高组织、策划、管理、研究和写作、解决冲突、求同存异的能力[1],訓練批判性思考、團隊精神和領導才...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!