Почему файл TAR был бы меньшим, чем это - содержание?

отсутствует SET

$sql = "UPDATE internal_marks 
      set  marks='".$one."' WHERE sno='1'";

в любом случае вам следует взглянуть на драйвер db для подготовленного оператора и параметра привязки .. потому что использование php var в sql рискует для внедрения sql

20
задан raven 29 December 2009 в 19:43
поделиться

4 ответа

Вы получаете различие из-за способа, которым работает файловая система.

Вкратце Ваш диск сделан из кластеров. Каждый кластер имеет фиксированный размер - скажем, - 4 килобайта. Если Вы будете хранить файл 1 КБ в таких кластерных 3 КБ, то будет не использовано. Точные детали меняются в зависимости от вида файловой системы, которую Вы используете, но большинство файловых систем прокладывает себе путь.

3 КБ потраченного впустую пространства не очень для единственного файла, но если у Вас есть много очень маленьких файлов, отходы могут стать значительной частью использования диска.

Внутренняя часть архив tar файлы не хранятся в кластерах, но один за другим. Это - то, куда различие прибывает из.

39
ответ дан 29 November 2019 в 23:23
поделиться

Не знание о том, какой tar Вы используете или какую систему Unix Вы используете, вот является моим предположением: oldcode содержит многочисленные меньшие файлы, которые, когда собой используют дисковое пространство неэффективно, так как дисковое пространство выделяется своего рода блоком, а не байтом байтом. В файле tar они связываются и делают максимальное использование дискового пространства, которое им присваивают.

4
ответ дан 29 November 2019 в 23:23
поделиться

Это имеет некоторое отношение к blocksize Вашей файловой системы. человек 1 du на MacOSX 10.5.6 состояний:

du утилита отображает файловую систему , использование блока для каждого аргумента файла и для каждого каталога в файловой иерархии базировалось в каждом аргументе каталога. Если никакой файл не указан, использование блока иерархии, базированной в текущем каталоге, отображено.

[mirko@borg foo]$ ls -la
total 0
drwxr-xr-x   2 mirko  wheel   68 Jan 30 21:20 .
drwxrwxrwt  10 root   wheel  340 Jan 30 21:16 ..
[mirko@borg foo]$ du -sh
0B  .
[mirko@borg foo]$ touch foo
[mirko@borg foo]$ ls -la
total 0
drwxr-xr-x   3 mirko  wheel  102 Jan 30 21:20 .
drwxrwxrwt  10 root   wheel  340 Jan 30 21:16 ..
-rw-r--r--   1 mirko  wheel    0 Jan 30 21:20 foo
[mirko@borg foo]$ du -sh
0B  .
[mirko@borg foo]$ echo 1 > foo
[mirko@borg foo]$ ls -la
total 8
drwxr-xr-x   3 mirko  wheel  102 Jan 30 21:20 .
drwxrwxrwt  10 root   wheel  340 Jan 30 21:16 ..
-rw-r--r--   1 mirko  wheel    2 Jan 30 21:20 foo
[mirko@borg foo]$ du -sh
4.0K    .

, Как Вы видите, даже файл 2 байтов берет целый блок 4 КБ. Существуют некоторые файловые системы, которые избегают этой траты пространства подвыделение блока .

3
ответ дан 29 November 2019 в 23:23
поделиться

du считает дисковые блоки, не вымя размера файла.

0
ответ дан 29 November 2019 в 23:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: