Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055

Оценить время записи в текстовый файл исходя из системных значений компьютера

11.02.2013, 19:30. Показов 1583. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Мне нужно просчитать ожидаемое время записи в текстовый файл исходя из системных значений компьютера:
- битности,
- тактовой частоты,
- объема оперативки и т.д.
и заодно также примерный объём.
Сейчас объём файла из всех девятизначных номеров - в формате "000000000" - составил 10 743 000 КБ,
время измерить не догадался, примерно неск часов.
Можно ли это сделать? Спасибо
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.02.2013, 19:30
Ответы с готовыми решениями:

Записи определенных значений (одна-две ячейки) в текстовый файл
Не мог бы кто-нибудь поделиться макросом для записи определенных значений (одна-две ячейки) в текстовый файл????????

Текстовый файл: текст по возрастанию (исходя из количества букв в слове)
Дан текстовый файл, в нем текст. Нужно преобразоваться текст, чтобы слова шли по возрастанию (смотрим на кол-во букв в слове). Как делать?

Выключение компьютера во время записи СD/DVD
Во время записи компакт дисков происходит самопроизвольное выключение компа. Самое интересное, что это происходит только при использовании...

9
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
11.02.2013, 19:52
Проще и надежнее записать пробный файл размером в 1...10 МБ, измерить время и таким образом узнать время записи 1 МБ.
Объем Вы можете посчитать точно, если известно количество записей и их формат.
Время записи файла сильно зависит также от фрагментации файловой системы и загруженностью другими процессами.
2
 Аватар для Апострофф
9908 / 3924 / 742
Регистрация: 11.10.2011
Сообщений: 5,906
11.02.2013, 20:02
Цитата Сообщение от Андрэич Посмотреть сообщение
заодно также примерный объём
Visual Basic
1
msgbox (len("999999999")+len(vbcrlf))*(999999999#+1)
1
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
11.02.2013, 20:35  [ТС]
Цитата Сообщение от Казанский Посмотреть сообщение
Проще и надежнее записать пробный файл размером в 1...10 МБ, измерить время и таким образом узнать время записи 1 МБ.
Допустим, фрагментацию не учитываем.
Мне надо расчитывать примерное время, исходя из параметров конкретной машины, на которой запускается код. Другими словами - формула расчёта - если таковую, конечно, можно вычислить, - исходя из хотя бы вышеперечисленных параметров системы (например, при такт частоте 1,43 ГГц на 32 битах - 1000 записей в сек и т.д...
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
13.02.2013, 00:55  [ТС]
А подскажите, как мне получить VBA (API) значения, например, таких характеристик?
Миниатюры
Оценить время записи в текстовый файл исходя из системных значений компьютера  
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
13.02.2013, 01:07  [ТС]
Цитата Сообщение от Казанский Посмотреть сообщение
Объем Вы можете посчитать точно, если известно количество записей и их формат.
Количество записей, конечно, известно. А что формат, что под этим имелось ввиду?

И ещё до кучи к предыдущ посту - также тип, тактовая частота и др важные характеристики процессора
Спасибо
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
13.02.2013, 02:21
Лучший ответ Сообщение было отмечено как решение

Решение

Андрэич, приведенные Вами факторы не будут иметь особого влияния на скорость записи.
Наибольшее значение имеют:
1) Тип (IDE, SATA...), модель носителя = максимальная скорость записи (скорость вращения шпинделя), технология записи = скорость обработки при параллельных запросах.
2) Текущая нагрузка на записывающее ус-во = процессы, которые с ним сейчас работают в режиме I/O.
3) Наличие ПО, которое перехватывает API-функции работы с ФС (антивирус, например)
4) Фрагментация
5) Качество самого носителя, возможные неприятности с поверхностью, BAD-ы...
6) Возможности контроллера на материнской плате, который будет передавать запросы, возможно, цепочка контроллеров, например, USB-SATA переходники.

Слишком много взаимозависящих факторов. Как тут все рассчитать.
Только опытным путем. Последовательная запись нескольких одинаковых порций данных.
Объем порций должен учитывать - записываете Вы 1 большой файл > 10 Мб. или много мелких <= 1 Мб.

Вот, например, SSD-диски приблизительно одинаково по скорости записывают разного объема порции данных,
и не учитывают такой фактор, как фрагментация.
3
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
13.02.2013, 20:47  [ТС]
Цитата Сообщение от Dragokas Посмотреть сообщение
Наибольшее значение имеют:
1) Тип (IDE, SATA...), модель носителя = максимальная скорость записи (скорость вращения шпинделя), технология записи = скорость обработки при параллельных запросах.
2) Текущая нагрузка на записывающее ус-во = процессы, которые с ним сейчас работают в режиме I/O.
3) Наличие ПО, которое перехватывает API-функции работы с ФС (антивирус, например)
4) Фрагментация
5) Качество самого носителя, возможные неприятности с поверхностью, BAD-ы...
6) Возможности контроллера на материнской плате, который будет передавать запросы, возможно, цепочка контроллеров, например, USB-SATA переходники.
В силу специфики программа будет запускаться на отдельных машинах...

1) Как вариант, если не найдётся подходящих программно-технич возможностей, - этот пункт можно получить из техн документации. Но вопроса это, собственно, не отменяет, только он становится вопросом по железу... :-)
2) Будет отдельный комп спец для этой задачи, ничем другим не загруженный,
3) с отключённым таким ПО,
4) максимально разогнанный и "расчищенный".
5) Это можно как-либо получить, исходя, например, из времени службы (типа как в мобильнике: набираешь сервисныый код - и высвечивается вся предыстория), ну или хотя бы "среднестатистически" по износу?
6) Ну и это можно, наверно, примерно прикинуть, вопрос только, как? :-) Может, какой тестовой процедурой по "слабым местам"?
Цитата Сообщение от Dragokas Посмотреть сообщение
Только опытным путем. Последовательная запись нескольких одинаковых порций данных... Вот, например, SSD-диски приблизительно одинаково по скорости записывают разного объема порции данных...
Сделал пока на этап отладки логгирование статистики, наполовину в ЭВМ, наполовину карандашом
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
13.02.2013, 21:05
Цитата Сообщение от Андрэич Посмотреть сообщение
Сейчас объём файла из всех девятизначных номеров - в формате "000000000" - составил 10 743 000 КБ,
ого. Не посмотрел. 1 файл ~ 10 Гб. ?
1) Каков принцип записи?
2) Это База? Дозапись... или просто файл целиком копируется?
3) Откуда куда - с винта на винт или с раздела на раздел одного и того же винта... сеть...

Могу разве что помочь накидать такую программу для практического подсчета.
Впрочем не вижу, что в ней будет такого сложного, если используется обычная последовательная запись.
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
13.02.2013, 22:45  [ТС]
Цитата Сообщение от Dragokas Посмотреть сообщение
1) Каков принцип записи?
2) Это База? Дозапись... или просто файл целиком копируется?
1) Прямой доступ в циклах:
Кликните здесь для просмотра всего текста
Visual Basic
1
2
3
4
For i = 0 To 99999999
    Print #1, Format$(i, "0000000000") 
        If i Mod 10000 = 0 Then DoEvents: Debug.Print Format$(i, "00 000 000")
Next i
...

2) Создание словарей )

Собственно говоря, восьмисимвольные стринги прошли быстро
(и всё на удивление прошло так просто и удачно, что амбициозно вздумалось, "а не замахнуться ли нам на ... нашего ... так сказать..." (С) )
А вот уже начиная с девятого... :-( Здесь, что наз, десять раз отмерь... хотя бы примерно.
Цитата Сообщение от Dragokas Посмотреть сообщение
3) Откуда куда - с винта на винт или с раздела на раздел одного и того же винта... сеть...
С винта на тот же винт, с С:\... на С:\...

(Я потом прогнал те же 8 знаков для интереса на другом компе: W7, 64, 4 ГБ, сколько-то там процессоров по 3 ГГц, Access 2003, 32 бит против ХР, 32, 2 ГБ, вирт машина, Access тот же. Получилось примерно 2:1 по времени. Аппаратная часть, как вы понимаете, одинакова. Значит, от параметров системы всё-таки многое зависит
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.02.2013, 22:45
Помогаю со студенческими работами здесь

Имя компьютера в текстовый файл
Доброе время суток. Как осуществить запись в текстовый файл ip адресс или имя компьютера?

Текстовый файл содержит записи о телефонах и их владельцах. Переписать в другой файл телефоны их владельцев, фамилии
Текстовый файл содержит записи о телефонах и их владельцах. Переписать в другой файл телефоны их владельцев, фамилии которых начинаются с...

Время сервера и время записи в файл
Всем привет! Мужики, помогите решить проблему. Есть сайт. При определенных событиях на сайте, нужно писать лог в файл. Время для...

Открыть для записи текстовый файл data.txt и записать в него полученный массив, закрыть файл
Составить программу с подпрограммами для выполнения следующего алгоритма (предусмотреть процедуры записи и чтения информации из файла). ...

Текстовый файл(записи)
Доброго времени. Помогите разобраться. Нужно ввести в текстовый файл наборы код магазина - ФИО директора если файл типизированный, то все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru