|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Valentin Davydov 2:5020/400 04 Apr 2006 19:25:48 To : Vadim Tzirulnicov. Subject : Re: Программирование портов ввода-вывода в FreeBSD -------------------------------------------------------------------------------- > From: "Vadim Tzirulnicov." <tz@ints.ru> > Date: Tue, 4 Apr 2006 12:10:05 +0000 (UTC) > >Решил такую вещь сделать - управление бытовыми электроприборами в своей >комнате из Интернет. > >Hо в этом деле, как обычно водится, я полный чайник :) > >Решил реализовать это на пёрле с подключением модулей на Си, нагрузку >подключать к LPT-порту. > >Hаписал APM.xs: > >#include "EXTERN.h" >#include "perl.h" >#include "XSUB.h" >#include "machine/cpufunc.h" >#include "machine/sysarch.h" > >MODULE = APM PACKAGE = APM > >void hello(int val) > CODE: > printf("Write to LPT: %d!\n",val); > if (i386_set_ioperm(0x378,2,1)==-1) > printf("Error set permissions for port 0x378 !\n"); > else > outb(0x378,val); > >Компилирую, подключаю в *.pl-файле: > >#!/usr/bin/perl >use ExtUtils::testlib; >use APM; >APM::hello(123); > >- выскакивает >Write to LPT: 123! >Ошибка адресации на шине (Core dumped) > >(запускаю разумеется из-под рута) > >Как побороть ? man 4 ppi >Также, просьба просвятить в отношении методики работы с COM-портами - в >частности, перечисление регистров и их битов. man 4 sio and references therein (особенно termios). >И такой вопрос - в итоге я хочу на сайт поместить форму, с которой при >помощи perlxstut можно было бы напрямую управлять нагрузкой на lpt-порте. >Hасколько я понимаю, сделать это напрямую не удастся, т.к. апач крутится под >своим юзером, не под root. Какой оптимальный вариант решения проблемы ? >Hаписать на perl скрипт сервера, который будет слушать заданный порт, и >скрипт клиента, который будет получать данные с формы сайта и подключаться к >серверу ? Ага. Чтобы кто угодно мог управлять твоим электричеством. Вал. Дав. --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/6577dba0c7c4.html, оценка из 5, голосов 10
|