Vad är filformatet CSO?
En .cso-fil är ett av de tidigaste komprimeringsformaten som utformats för att komprimera ISO-skivavbildningar. Formatet är även känt som CISO (Compressed ISO) och tillämpar komprimering på blocknivå för att minska lagringsutrymmet samtidigt som skivavbildningen kan läsas vid behov.
Formatet .cso används främst för att lagra skivavbildningar av PlayStation Portable (PSP)-spel i komprimerad form. En .cso-fil kan komprimeras i nio nivåer (1-9), där högre nivåer ger bättre komprimering men långsammare dekomprimering. Varje sektorblock på 2 KB komprimeras individuellt med DEFLATE - eller lagras rått om det inte krymper - så att anpassad firmware och emulatorer endast dekomprimerar de block som behövs för stunden.
Varje .cso börjar med en 4-byte ASCII-signatur CISO vid byte-offset 0, följt av ett 24-byte huvud (blockstorlek, total okomprimerad storlek, version). Vanliga verktyg inkluderar maxcso och ciso; emulatorn PPSSPP läser .cso-filer direkt på Windows, macOS, Linux och Android. En nyare variant, .zso, ersätter DEFLATE med LZ4 för snabbare dekomprimering på hårdvara med låg effekt.
Säkerhet & trygghet
RISK: MEDIUMSjälva CSO-formatet är passiv data. Riskerna handlar om innehållet och källan: CSO-filer i omlopp är nästan alltid upphovsrättsskyddade PSP/PS2-spel - att dumpa skivor du själv äger är en sak, men att ladda ner andras spel är piratkopiering. Webbplatser för nedladdning av spel-ROM:ar är också en vanlig vektor för skadlig kod, och buntar ofta ihop falska «installerare» eller dekomprimerare. Håll dig till maxcso (öppen källkod) för komprimering/dekomprimering och PPSSPP (officiell webbplats) för uppspelning; undvik döda verktyg från pspgen.com-eran och alla nedladdningsportaler för «CSO-konverterare».
Formatdetaljer
i ett nötskalProgram som öppnar CSO-filer
Tekniska detaljer
djup specifikation| Filsignatur | CISO (hex 43 49 53 4F) vid byte-offset 0 |
| Huvudstorlek | 24 byte (binärt huvud med fast längd) |
| Blockstorlek | 2 048 byte per block (matchar ISO 9660 / UDF-sektorstorlek) |
| Komprimeringsalgoritm | DEFLATE (zlib), tillämpas oberoende på varje 2 KB-block |
| Komprimeringsnivåer | 1 (snabbast, minst komprimering) till 9 (långsammast, maximal komprimering) |
| Lagringsflagga per block | Varje blockindexpost flaggar om blocket lagras komprimerat eller rått (okomprimerat) |
| Byteordning | Little-endian (alla heltalsfält i huvudet med flera byte) |
| Kodning | Binär |
| Typisk komprimerad storlek | 50-70 % av käll-ISO, beroende på komprimeringsnivå och innehållstyp |
| Typiskt filstorleksintervall | 200 MB - 1,5 GB (PSP UMD-spelavbildningar) |
| Formatversioner | v1 (original CISO) och v2 (maxcso; lägger till stöd för avbildningar större än 2 GB och extra blockflaggor) |
| MIME-typ | application/octet-stream; även application/x-compressed-iso |
| Inbäddat källformat | ISO 9660 / UDF optisk skivavbildning |
| Integritet | Ingen kontrollsumma för hela filen; integritet per block förlitar sig på DEFLATE-strömmen |
| Huvudsaklig användning | Distribution och körning av PSP UMD-spelavbildningar under anpassad firmware och emulatorer som PPSSPP |
| Relaterade komprimeringsvarianter | ZSO (.zso) använder LZ4 istället för DEFLATE; DAX (.dax) är ett separat PSP-format; CSOv2 via maxcso utökar originalhuvudet för större avbildningar |
| Släppt | circa 2005 (ciso tool for PSP homebrew); CSOv2 added later for larger/PS2 images |
| Senaste version | CSO v2 (extends the original CISO header for >2 GB images and additional block flags); ZSO is a Zlib→LZ4 variant |
| Specifikation | github.com |
CSO-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om CSO-filer.