Перейти к содержанию
    

Olej

Свой
  • Постов

    365
  • Зарегистрирован

  • Посещение

Весь контент Olej


  1. Неправилно сказали :smile3009: Программный код пользовательского режима вполне может (с существенными ограничениями) обращаться к регистрам внешних устройств. См. прямо в системе man по: ioperm(2), iopl(2), inb(2), outb(2), capabilities(7) и т.д. (процессор i386 только). Кроме того, Linux предоставляет даже специальное символьное устройство /dev/port для прямых чтения и записи в порты внешних устройств (с правами root, естественно). Более того, во многих случаях в Linux всячески поощряется организация ввода/вывода именно из пространства пользователя, без написания модулей ядра (драйверов). Для того делаются специальные и достаточно сложные инструменты промежуточного слоя. Самые известные тому примеры: проект libusb и файловая система FUSE, на которых в последние годы реализуется стандартная поддержка тысяч разнообразных устройств от их производителей. P.S. Детали и примеры использования всего этого хозяйства можете посмотреть здесь: Практикум по Linux Kernel.
  2. Забудьте вы про QNX. :laughing: Последний раз исходники QNX DDK были открыты и представлены в 2007г. Вряд ли материалы ... рудиментные 10-летней давности, представляют интерес.
  3. Открыть COM USB в Linux

    Когда кажется - перекреститься нужно! А заголовочные файлы ядра и (часто подобные им) заголовочные файлы пространства пользователя - лежат в совершенно разных местах. В модулях ядра (то что вы называете драйверами) могут использоваться только и исключительно заголовочные файлы ядра, вот отсюда: $ ls /lib/modules/`uname -r`/build/include ... Которые не имеют ничего общего с заголовочными файлами пользовательского пространства из /usr/include.
  4. Можно :laughing: Драйверы и модули ядра Linux
  5. Открыть COM USB в Linux

    Если казалось :1111493779: , то можете написать надстройку, модуль ядра над сериальным портом, который сделает доступ только из одного-единственного open() на уровне ядра. :santa2:
  6. Я ещё раз повторю для самых тупых (вы спрашивайте, спрашивайте... ): - это написано для тех, кому это может понадобиться, кому захочется ... могут считать это подарком к Новому Году. :santa2: - тебе оно неинтересно? не надо? ... такой умный? - так "вольному воля"(с): повернулся - застегнул ширинку - и пошёл... :1111493779:
  7. См. Знакомство с версиями 3.3 и 3.4 ядра Linux "В чём сила, бат?!"(с) :yeah: "Если бы, да кабы, да во рту росли грибы... "(с) :1111493779: А то, что в составе практически любого Android устройства присутствует набор утилит BusyBox с GNU/POSIX набором консольных команд, или ifconfig к TCP/IP подсистеме, и ещё другие подобные ... артефакты - это всё тоже ЯДРО? "могли бы да кабы..." - это очень содержательный уровень обсуждения, я здесь кому то уже подсказывал :laughing:
  8. Дурачок юный, если ты разуешь глаза и перестанешь петь самолюбуясь как тетерев на току, то обнаружишь: там элементарно нет никакой рекламы, ни единого рекламного банера, и сайты эти не имеют ко мне никакого касательства... и за пользование с тебя не просят ни копейки. Это конспект курса лекций, прочитанных по заказу в крупной международной компании (GlobalLogic) специализирующейся на разработке ПО (>3000 разработчиков по миру). И IBM считает это материал адекватным для публикации большой серией статей среди своих постоянных авторов. Этот материал не нужно дописывать, издавать... Он выставлен для свободного пользования теми, кому это понадобится. ... а не для тех, кто только рот открывает. :1111493779: То что неправильно указали - может быть, это спасибо что указали, и я пересмотрю и перепроверю. А во всём остальном... : зачэ-э-э-э-м так много пысал? :1111493779: Никого я не собирался "пугать": Всё, что так много написано - к существу дела на практике (обмена драйвера с юзерспейс) не имеет никакого касательства, написано "лишь бы поговорить"... никакие "извраты", ZONE_HIGHMEM и NUMA к этому вопросу и рядом никаким боком не лежали.
  9. Публикация весьма старая, автор играется с ядрами больше 2.2 и 2.4, то что касается 2.6 дописано явно позже и по верхам (то, что он показывает как пример для 2.6 - просто на-дух не компилируется под современное ядро, код надо перекраивать). Но для ознакомления годится. 1. во-первых, это действительно "только в теории", реально это не даёт ускорения ... или мало заметно; 2. это могло бы быть интересно, возможно, при обменах единоразово большими объёмами между ядром и юзерспейс - в несколько PAGE_SIZE, работать с такими объёмами за раз - это не частая потребность.
  10. сборка проекта

    Я ничего вообще не пытаюсь доказывать - я только показал материал последнего времени (свежий) подобранный по тем вопросам, которые задают пользователи форума: берите, смотрите, пользуйтесь... И уж ВАМ персонально о чём то доказывать мне вовсе и на хрен не надо :1111493779: "Кросс" - только потому, что однотипных вопросов много, они постоянно повторяются, а темы, где они заданы - сейчас "расползутся". P.S. а я на форуме бываю редко, некогда этой ерундой заниматься, вот и ответил всем заинтересованным. А вы не напрягайтесь, не переутомляйтесь, нужно себя любимого беречь... если утомляет - самое время пойти проспаться. :bb-offtopic:
  11. Сравнивайте версии: Linux Cross Reference - очень помогает разобраться в изменениях API ядра.
  12. Литература по Linux

    Ещё для потомков - вот здесь тоже есть курс лекций Инструменты Linux или Инструменты Linux для Windows-программистов - не для чайников, но для программистов, для быстрого въезжания в Linux. Обкатано на группах профессиональных разработчиков. Не в качестве рекламы - просто пользуйтесь кому понадобится.
  13. Конечно линковки. См. относительно сборки, например: Инструменты Linux или Инструменты Linux для Windows-программистов (чтобы не повторять всё здесь многословно - там всё есть).
  14. Правильно, да не очень В Linux разделение на пространство ядра и пользователя - очень условное, для 32-бит Linux это выше/ниже границы 0xC000, copy_to_user всего лишь снимает проверку адреса относительно этой границы. См. например Драйверы и модули ядра Linux, там же есть полные примеры кода блокирующих и неблокирующих операций ввода и вывода в модулях ядра.
  15. сборка проекта

    Ничего подобного, CPPFLAGS одна из предопределённых переменных make, а не "чтобы всем было понятно" (чтобы всем было понятно - так это в цирке :laughing:) ТС - см.: Инструменты Linux или Инструменты Linux для Windows-программистов.
  16. Драйверы и модули ядра Linux проект книги: "Модули ядра Linux"
  17. или неправИльное использование русской грамматики :yeah: - и нога прострелена! Android не может Linux использовать, по той простой причине, что Android - он Linux И ЕСТЬ. :1111493779: Над которым (Linux-ом, самым что ни на есть) - надстроен слой мидлеваре + собственная Java машина, а все приложения Android всего лишь Java-приложения. Схема то всего этого - элементарная, см.: Android как он внутри.
  18. вопрос про tcpdump

    http://www.linuxcenter.ru/lib/articles/net...pdump_mon.phtml Ваш фильтр : dst host host Вот ещё короткая шпаргалка: http://www.k-max.name/linux/tcpdump-v-primerax/ Этого обычно достаточно. P.S. Используйте Wireshark ... только не "вместо", а "в дополнение".
  19. Смущает то, что: - на их же собственной странице загрузки http://www.haiku-os.org/get-haiku указано последняя версия от June 20th, 2011 - а что, с тех пор проект сдох? - большинство (все?) заявленных там же зеркал: таковыми не являются - они уже утратили интерес к Haiku? - любопытно и то, что многие (всё?) из заявленных там зеркал - это URL университетов, которые предлагают разные материалы для своих студентов - OS для обучения студентов? ещё один MINIX?
  20. Не-а ... На любую не-Windows систему :santa2: .
  21. Это в неявном предположении, что это USB устройство будут всовывать в железку с Windows. А если там нормальная :laughing: операционная система? (та же история, как с USB GSM / CDMA / WiMAX / LTE модемами)
  22. В том, что вы описываете, нужно детально садится разбираться (вам разбираться!): что там за компьютер + что там за USB. А как вы себе это представляете? - "спросить хоста". Для этого устройство USB должно быть активным инициатором. Если там в устройстве USB наворочен отдельный компьютер, то это, может быть, и возможно... Но я сильно сомневаюсь, что в двух ваших USB брелках наворочено два компьютера.
  23. А дальше здесь начинается пустой словесный понос :1111493779: , и мне здесь более делать нечего :crying: Я вам своё мнение достаточно высказал, времени на вас много перевёл ... а теперь вы можете: надувать щёки и обсуждать - обсуждать - обсуждать...
  24. - в API POSIX 1003.b (вида pthread_*()) каждый поток имеет свой собственный стек (да и страшно представить, что было бы с системой при сбое только одного потока)... - диспетчеризация делается на базисе потоков, а не процессов ... поэтому: что 1000 процессов, что 1000 потоков - в данном контексте это не важно - термин процесс в этом смысле вообще избыточный, его не нужно привлекать ... если вы не желаете дополнительной путаницы, или называйте это процессами, или тасками (в однопоточных системах) - это всё с точки зрения диспетчеризации одно и то же. Ну почему же В технологии CUDA на GPU NVIDIA как-раз вполне может быть 1000 потоков, и как-раз на ЦОС (FFT). Я сам делал 1000 потоков - сначала в виде экспериментов, а затем и в одном из реальных проектов с железом ... до сих пор проект крутится. А нет никакого "мягкого" реального времени ... как "не бывает осетрины 2-й свежести"(с). История вопроса: - термин мягкого реального времени был введен Microsoft - в то время, когда она изо всех сил тужилась сертифицировать Windows NT 3.51 (разрабатываемую системным отделом DEC) на (хоть куда, лишь бы сертифицировать!): а). POSIX-совместимость + б). на микроядерность + в). на риалтайм... - когда их послали и с а). и с б). и с в). - накал страстей несколько упал ... а спекулятивная терминология осталась. Есть такой мировой общепризнанный тестер - фирма Dedicated Systems (легко найдёте), так вот она выполняет изучение, и выпускает общедоступные объёмные отчёты... В их отчётах (по состоянию дел 2-5 лет назад, сейчас не знаю) такие RT системы, как pSOS, QNX, VxWorks ... что-то там из RT-клонов Linux ... Но никаких там "мягих" ... ни "микромягких", ни никаких других - там нет. Не допускают их в эту компанию.
  25. По поводу "во встраиваемых системах" виндузей? Вкопирую прогноз фирмы IDC (http://rus-linux.net/forum/viewtopic.php?f=5&t=1856#p5226): И это в массовых "балалайках" на непритязательного обывателя По поводу мультимедии в ответственных управляющих системах - порадовало. Представилось: - сидит где-то на нововоронежской АЭС оператор в ночную смену... - и команду даёт голосом (мультимедиа!) для СУ: "Мурку давай"... - а та ему в ответ наигрывает (мультимедиа!) "Мурку", чтоб не так грустно было ночь коротать... Благостно. Лепота ... :santa2:
×
×
  • Создать...