LINUX.ORG.RU

Сообщения Sadler

 

[C] Чтение файла с помощью fgetc

Форум — Development

Навеяно тредом про Exim. Решил я проверить, действительно ли всё так хорошо и поток байт из файла можно читать с помощью fgetc(), а буферы винта и ФС сами разрулят ситуацию.

Для проверки использовался следующий код:

#include <stdio.h>
#include <time.h>

int main() {
    const int n = 16384;
    char buf[n];

    time_t t1 = time(0);
    FILE* f = fopen("./1.avi","rb");
    while(!feof(f)) fgetc(f);//fread(buf,1,n,f);
    fclose(f);
    time_t t2 = time(0);

    printf("%i%,t2-t2);
    return 0;

Каждый раз брался новый файл, чтобы оно не кэшировалось слишком.

Использовалось две ОС: 1) Mandriva Linux 2011.0, ext3, размер блока 4096 2) MS Windows XP, NTFS, размер блока 4096

Таблицы экспериментов:

Mandriva, Ext3                              Windows, NTFS
метод | буфер | размер | время | мб/сек|    метод | буфер | размер | время | мб/сек|
---------------------------------------|    ---------------------------------------|
fgetc |     - |    264 |    12 |  22.0 |    fgetc |     - |    426 |    71 |   6.0 |
---------------------------------------|    ---------------------------------------|
fread |     1 |    441 |    39 |  11.3 |    fread |     1 |    426 |    71 |   6.0 |
      |     2 |    122 |     6 |  20.3 |          |     2 |    426 |    36 |  11.8 |
      |     4 |    183 |     6 |  30.5 |          |     4 |    497 |    29 |  17.1 |
      |     8 |    291 |     9 |  32.3 |          |     8 |    703 |    17 |  41.4 |
      |    16 |    273 |     8 |  34.1 |          |    16 |   1399 |    37 |  37.8 |
      |    32 |    834 |    18 |  46.3 |          |    32 |   1429 |    14 | 102.1 |
      |    64 |    740 |    17 |  43.5 |          |    64 |   1400 |    13 | 107.7 |
      |   128 |    889 |    20 |  44.5 |          |   128 |   1399 |    16 |  87.4 |
      |   256 |    622 |    14 |  44.4 |          |   256 |   1402 |    17 |  82.5 |
      |   512 |    734 |    13 |  56.5 |          |   512 |   1489 |    18 |  82.7 |
      |  1024 |    733 |    11 |  66.6 |          |  1024 |   4852 |    73 |  66.5 |
      |  2048 |    734 |    13 |  56.5 |          |  2048 |   4852 |    56 |  86.6 |
      |  4096 |    783 |    15 |  52.2 |          |  4096 |   4852 |    56 |  86.6 |
      |  8192 |    783 |    15 |  52.2 |          |  8192 |   4852 |    56 |  88.2 |
      | 16384 |    834 |    19 |  43.9 |          | 16384 |    834 |    56 |  86.6 |
---------------------------------------|    ---------------------------------------|

Выводы делайте сами.

 

Sadler
()

Mandriva. Coredump после обновления

Форум — Desktop

Со всеми ядрами новее 2.6.33.7 Мандрива на моём ноуте работает минут 5, а потом выдаёт такой coredump
Устал сидеть на 2.6.33.7, мож есть какое решение такой проблемы?

Модель ноута: Fujitsu-Siemens AMILO Pa 2548

Sadler
()

Kapman Tricks

Форум — Games

Уже с год наблюдаю в Kapman забавную багофичу: http://www.youtube.com/watch?v=hzo5kUbrQnM (для Ъ - прохождение сквозь стены).
Лишь бы её не пофиксили, так оживляет игру :D

Для повторения нужно перед поворотом в игре нажать ВВЕРХ-ВНИЗ, ВНИЗ-ВВЕРХ, ВЛЕВО-ВПРАВО или ВПРАВО-ВЛЕВО в зависимости от стороны, в которую хотите пройти.

Sadler
()

Airstrike 0.6

Форум — Games

Написал я тут с недельку назад однокурснику игрушку-аркаду в качестве семестрового проекта на Java. Кое-где код сознательно ухудшался, чтобы смахивало на работу «рядового» студента :) Выкладываю на общее обозрение, может кому-нибудь пригодится. Да, версия unstable, ибо единственное реальное тестирование проходила во время сдачи работы.

Скрин 1 - главное меню
Скрин 2 - игровой процесс
Скрин 3 - использован бонус замедления времени

Скачать

В игре присутствуют читы:
MATRIX - постоянный бонус замедления времени
PENETRANT - постоянный бонус «проникающий лазер»
GODLIKE - 20 жизней в начале каждого уровня
COOLER - увеличивает скорость перезарядки оружия
HOVERTANK - включает перемещение пушки игрока вверх-вниз
HYPER - изменяет фон

Читы вводятся на экране выбора сложности. Использование чита уменьшает число очков в 8 раз. Можно использовать одновременно только один чит. Вводить нужно медленно, держа по полсекунды каждую клавишу.

Sadler
()

[патч] Teeworlds

Форум — Games

Вот за этот патч клиента Teeworlds меня забанили на http://teeworlds.com/forum/.

Список фич:

  • Настройка масштаба. Думаю, многие заметили, как ужасно смотрится игра в оригинальном масштабе на больших мониторах. Да, баланс (как бы не уверяли некоторые) не должно рушить, ибо точность наведения, увы, падает с изменением масштаба.
  • Aim-line. Должно помочь новичкам научиться обращаться с ракетницей. Для среднего игрока не нужно.
  • Время до появления катаны. Обеспечит новичкам возможность хотя бы иногда получать этот ценный бонус.
  • Автоматическая смена оружия при отсутствии патронов. Очень удобно в массовых баталиях, т.к. иногда не сразу осознаёшь, что патроны уже кончились и ты не стреляешь.
  • Количество брони передвинуто за количество жизни. Просто меньше отвлекает от игры.
  • Быстрая атака по нажатию MOUSE3. Позволяет не убивать мышь закликиванием при стрельбе из пистолета.

Патч смотреть здесь.

Подумываю форкнуть Teeworlds, дабы развивать подобные наработки. Ибо сообществом http://teeworlds.com/ они воспринимаются только как читы.

 

Sadler
()

RSS подписка на новые темы