kadet145
Пользователь
Сообщений: 15
|
|
« : 23 Апрель, 2015, 11:34:49 » |
|
Как в QNX 6.5 посмотреть сколько уже времени работает встраиваемая система (ПК)?
|
|
|
Записан
|
|
|
|
Владимир Махилёв
Сотрудник СВД ВС
Старожил
Сообщений: 704
|
|
« Ответ #1 : 23 Апрель, 2015, 14:22:21 » |
|
С помощью утилиты uptime
Либо из программного кода путем сравнения текущего времени со значением времени в секундах на момент старта системы SYSPAGE_ENTRY(qtime)->boot_time
|
|
|
Записан
|
|
|
|
kadet145
Пользователь
Сообщений: 15
|
|
« Ответ #2 : 23 Апрель, 2015, 14:34:49 » |
|
Утилита uptime показывает время работы системы с момента включения питания, а мне нужно немного другое. Мне надо знать сколько времени всего отработал компьютер за свою жизнь (с момента первого включения, т.е. с завода). Например, в ОС Windows или Linux можно посмотреть сколько отработал всего жесткий диск и т.д. Как эту информацию узнать в Qnx?
|
|
|
Записан
|
|
|
|
kadet145
Пользователь
Сообщений: 15
|
|
« Ответ #3 : 23 Апрель, 2015, 16:07:02 » |
|
почему то на разных системах результат утилиты uptime отображается по разному. На виртуалке qnx стоит, тут отображается именно, что мне надо - сколько всего за жизнь отработала ОС и вообще ПК, а когда пробую на встраиваемой системе, то отображается только время сколько отраюотала система после последнего включения питания, а не наработанное время за всю жизнь.
|
|
« Последнее редактирование: 23 Апрель, 2015, 16:21:55 от kadet145 »
|
Записан
|
|
|
|
Игорь Рондарев
Сотрудник СВД ВС
Опытный пользователь
Сообщений: 282
Сотрудник СВД ВС
|
|
« Ответ #4 : 23 Апрель, 2015, 17:19:29 » |
|
Утилита uptime не обладает функциональностью показа времени "за всю жизнь"; скорее всего, на виртуальной машине просто некорректно настроены системные часы.
Реализовать отображение времени общей работы работы системы Вы можете самостоятельно различными способами - например, суммированием и последующим сохранением значения uptime в какой-либо файл на файловой системе при перезагрузке или завершении работы системы. Если же требуется использование некой информации об общем времени работы, хранящейся в физическом устройстве (например, в HDD), то напишите, пожалуйста, более конкретно, на какое устройство Вы расчитываете и какие именно действия предпринимали в других ОС (например, в ОС Linux) для отображения данной информации.
|
|
|
Записан
|
|
|
|
Владимир Махилёв
Сотрудник СВД ВС
Старожил
Сообщений: 704
|
|
« Ответ #5 : 23 Апрель, 2015, 18:16:59 » |
|
Для контроля времени работы самой ОС также можно также портировать в QNX сервис uptimed.
Еще, теоретически можно считывать показания времени работы жесткого диска через SMART - Power_On_Hours если конкретно это поле поддерживается и корректно устанавливается самим диском.
|
|
|
Записан
|
|
|
|
kadet145
Пользователь
Сообщений: 15
|
|
« Ответ #6 : 23 Апрель, 2015, 21:58:23 » |
|
И какой пользоваться утилитой для просто SMART жесткого диска?
|
|
|
Записан
|
|
|
|
kadet145
Пользователь
Сообщений: 15
|
|
« Ответ #7 : 24 Апрель, 2015, 10:08:28 » |
|
И еще вопрос, а как портировать сервис uptimed в qnx. Сервис uptimed есть в ubuntu
|
|
|
Записан
|
|
|
|
Владимир Махилёв
Сотрудник СВД ВС
Старожил
Сообщений: 704
|
|
« Ответ #8 : 24 Апрель, 2015, 15:18:27 » |
|
По SMART потребуется доработка/разработка программы для запроса этих параметров (и/или получение их через драйвер).
По uptimed - классическое портирование. Скачиваете исходники, вносите необходимые правки, если они требуются, собираете исходники для QNX.
|
|
|
Записан
|
|
|
|
kadet145
Пользователь
Сообщений: 15
|
|
« Ответ #9 : 27 Апрель, 2015, 15:03:01 » |
|
По поводу портирования. Надо скачать исходник uptimed для ubuntu и открыть его в qnx momentics в проект для qnx?
|
|
|
Записан
|
|
|
|
Владимир Махилёв
Сотрудник СВД ВС
Старожил
Сообщений: 704
|
|
« Ответ #10 : 27 Апрель, 2015, 15:55:15 » |
|
Рекомендовал-бы начать со сборки в консоли. И версию лучше попроще, что-нибудь поближе к *BSD.
|
|
|
Записан
|
|
|
|
|
|
kadet145
Пользователь
Сообщений: 15
|
|
« Ответ #13 : 27 Апрель, 2015, 17:20:13 » |
|
Спасибо Но я все же хочу почитать информацию, документацию про то как портировать, ознакомится с общим смыслом
|
|
|
Записан
|
|
|
|
Владимир Махилёв
Сотрудник СВД ВС
Старожил
Сообщений: 704
|
|
« Ответ #14 : 28 Апрель, 2015, 12:04:31 » |
|
Крайне полезная статья с которой стоит начать - Conventions for Recursive Makefiles and DirectoriesВ ней даже разобран пример портирования bzip2. Но не стоит слишком дословно следовать этому пути при портировании всех проектов. С каждым придётся бороться индивидуально. Чем сложнее проект, чем больше у него зависимостей тем изощренней портирование. Общая рекомендация: проще начинать сборку self-hosted, под QNX, например, в виртуальной машине. Если проект настраивается с помощью скрипта configure - нужно в первую очередь подобрать правильный набор опций, библиотек, заголовочных файлов и т.д. и т.п. Также существует проект PKGSRC под QNX - http://community.qnx.com/sf/projects/pkgsrc/В нем множество различных пакетов уже собранных (и еще не собранных) под QNX. У них своя обвязка для сборки со своим набором утилит, поэтому если портировать в рамках pkgsrc то нужно сначала познакомиться с их системой сборки - http://community.qnx.com/sf/wiki/do/viewPage/projects.pkgsrc/wiki/Bootstrap
|
|
|
Записан
|
|
|
|
|