Εγχειρίδια για τη γραμμή εντολών

Man » zlib Manual online - λεπτομερής διαδικτυακή τεκμηρίωση για τη σελίδα man του zlib

🌍
zlib - βιβλιοθήκη συμπίεσης/αποσυμπίεσης

ΠΕΡΙΛΗΨΗ

[δείτε το zlib.h για πλήρη περιγραφή]

ΠΕΡΙΓΡΑΦΗ

Η βιβλιοθήκη zlib είναι μια βιβλιοθήκη συμπίεσης δεδομένων γενικής χρήσης. Ο κώδικας είναι ασφαλής για νήματα, με την προϋπόθεση ότι οι τυπικές συναρτήσεις βιβλιοθήκης που χρησιμοποιούνται είναι ασφαλείς για νήματα, όπως οι ρουτίνες κατανομής μνήμης. Παρέχει συναρτήσεις συμπίεσης και αποσυμπίεσης στη μνήμη, συμπεριλαμβανομένων των ελέγχων ακεραιότητας των αποσυμπιεσμένων δεδομένων. Αυτή η έκδοση της βιβλιοθήκης υποστηρίζει μόνο μία μέθοδο συμπίεσης (deflation), αλλά μπορεί να προστεθούν και άλλοι αλγόριθμοι αργότερα με την ίδια διασύνδεση ροής.

Η συμπίεση μπορεί να γίνει σε ένα μόνο βήμα εάν τα buffer είναι αρκετά μεγάλα ή μπορεί να γίνει με επαναλαμβανόμενες κλήσεις της συνάρτησης συμπίεσης. Στη δεύτερη περίπτωση, η εφαρμογή πρέπει να παρέχει περισσότερα δεδομένα εισόδου και/ή να καταναλώνει την έξοδο (παρέχοντας περισσότερο χώρο εξόδου) πριν από κάθε κλήση.

Η βιβλιοθήκη υποστηρίζει επίσης την ανάγνωση και την εγγραφή αρχείων στη μορφή gzip(1) (.gz) με μια διασύνδεση παρόμοια με αυτή του stdio.

Η βιβλιοθήκη δεν εγκαθιστά κανένα χειριστή σήματος. Ο αποκωδικοποιητής ελέγχει τη συνέπεια των συμπιεσμένων δεδομένων, επομένως η βιβλιοθήκη δεν θα πρέπει ποτέ να καταρρεύσει, ακόμη και σε περίπτωση κατεστραμμένων δεδομένων εισόδου.

Όλες οι συναρτήσεις της βιβλιοθήκης συμπίεσης είναι τεκμηριωμένες στο αρχείο zlib.h. Η διανομή πηγαίου κώδικα περιλαμβάνει παραδείγματα χρήσης της βιβλιοθήκης στα αρχεία test/example.c και test/minigzip.c, καθώς και άλλα παραδείγματα στον κατάλογο examples/.

Οι αλλαγές σε αυτήν την έκδοση είναι τεκμηριωμένες στο αρχείο ChangeLog που συνοδεύει τον πηγαίο κώδικα.

Η zlib είναι ενσωματωμένη σε πολλές γλώσσες και λειτουργικά συστήματα, συμπεριλαμβανομένων, αλλά όχι περιοριζόμενων σε, Java,

Python, .NET, PHP, Perl, Ruby, Swift και Go.

Ένα πειραματικό πακέτο για την ανάγνωση και την εγγραφή αρχείων στη μορφή .zip, που έχει δημιουργηθεί πάνω από τη zlib από τον Gilles Vollant (_), είναι διαθέσιμο στη διεύθυνση:

http://www.winimage.com/zLibDll/minizip.html και επίσης στον κατάλογο contrib/minizip της
κύριας διανομής πηγαίου κώδικα της zlib.

ΔΕΣ ΕΠΙΣΗΣ

Η ιστοσελίδα της zlib βρίσκεται στη διεύθυνση:

http://zlib.net/

Η μορφή δεδομένων που χρησιμοποιεί η βιβλιοθήκη zlib περιγράφεται από τις RFC (Request for Comments) 1950 έως 1952 στα αρχεία:

http://tools.ietf.org/html/rfc1950 (για τη μορφή κεφαλίδας και τροχιάς της zlib)
http://tools.ietf.org/html/rfc1951 (για τη μορφή συμπιεσμένων δεδομένων deflate)
http://tools.ietf.org/html/rfc1952 (για τη μορφή κεφαλίδας και τροχιάς της gzip)

Ο Mark Nelson έγραψε ένα άρθρο σχετικά με τη zlib για το τεύχος του Ιανουαρίου 1997 του Dr. Dobb's Journal. ένα αντίγραφο του άρθρου είναι διαθέσιμο στη διεύθυνση:

http://marknelson.us/1997/01/01/zlib-engine/

ΑΝΑΦΟΡΑ ΠΡΟΒΛΗΜΑΤΩΝ

Πριν αναφέρετε ένα πρόβλημα, ελέγξτε την ιστοσελίδα της zlib για να βεβαιωθείτε ότι έχετε την πιο πρόσφατη έκδοση της zlib. διαφορετικά, αποκτήστε την πιο πρόσφατη έκδοση και δείτε αν το πρόβλημα εξακολουθεί να υπάρχει. Διαβάστε τις Συχνές Ερωτήσεις της zlib στη διεύθυνση:

http://zlib.net/zlib_faq.html

πριν ζητήσετε βοήθεια. Στείλτε ερωτήσεις και/ή σχόλια στο _, ή (για την έκδοση DLL των Windows) στον Gilles Vollant (_).

ΣΥΓΓΡΑΦΕΙΣ ΚΑΙ ΑΔΕΙΑ

Έκδοση 1.3.1

Πνευματικά δικαιώματα (C) 1995-2024 Jean-loup Gailly και Mark Adler

Αυτό το λογισμικό παρέχεται "όπως έχει", χωρίς καμία ρητή ή σιωπηρή εγγύηση. Σε καμία περίπτωση οι συγγραφείς δεν θα ευθύνονται για τυχόν ζημίες που προκύπτουν από τη χρήση αυτού του λογισμικού.

Χορηγείται άδεια σε οποιονδήποτε να χρησιμοποιεί αυτό το λογισμικό για οποιονδήποτε σκοπό, συμπεριλαμβανομένων των εμπορικών εφαρμογών, και να το τροποποιεί και να το διανέμει ελεύθερα, υπό τις ακόλουθες προϋποθέσεις:

    Η προέλευση αυτού του λογισμικού δεν πρέπει να διαστρεβλώνεται. δεν πρέπει να ισχυρίζεστε ότι γράψατε το
αρχικό λογισμικό. Εάν χρησιμοποιείτε αυτό το λογισμικό σε ένα προϊόν, μια αναγνώριση στην τεκμηρίωση του προϊόντος θα ήταν ευπρόσδεκτη, αλλά δεν απαιτείται.

    Οι τροποποιημένες εκδόσεις πηγαίου κώδικα πρέπει να επισημαίνονται ευδιάκριτα ως τέτοιες και δεν πρέπει να παρουσιάζονται ως η αρχική έκδοση του λογισμικού.

    Αυτή η ειδοποίηση δεν μπορεί να αφαιρεθεί ή να τροποποιηθεί από οποιαδήποτε διανομή πηγαίου κώδικα.

Jean-loup Gailly Mark Adler _ _

Η μορφή deflate που χρησιμοποιεί η zlib ορίστηκε από τον Phil Katz. Οι προδιαγραφές deflate και zlib συντάχθηκαν από τον L. Peter Deutsch. Ευχαριστούμε όλους τους ανθρώπους που ανέφεραν προβλήματα και πρότειναν διάφορες βελτιώσεις στη zlib. είναι πάρα πολλοί για να τους αναφέρουμε εδώ.

Η σελίδα man του UNIX δημιουργήθηκε από τον R. P. C. Rodgers, U.S. National Library of Medicine (_).