Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Нужен совет будущему драйверо-писателю.  (Прочитано 1797 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн virusoft

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
    • Virusoft
Re: Нужен совет будущему драйверо-писателю.
« Ответ #15 : 09 Октября 2015, 00:00:26 »
virusoft,
В наше время приходилось начинать с примитивных языков. Я еще Фортран и PL застал. Фокал это наше изобретение для БК007 )) Помню такую шнягу. А Паскаль действительно для понимания алгоритмов лучше всего.
Перед тем как браться за Си надо сначала на чем-то "чистом" поупражняться. Иначе код на Си будет кошмарным.
Это ты верно говоришь. Но без знания алгоритмов работы и понимания, что должна делать программа(драйвер) никакой язык программирования не спасет от фиаско.
Если работает - не трогай. Linux - гибкая система, но один раз прогнувшись может обратным ходом распрямиться и ударить по самому (…) месту. Думай о будущем и все будет хорошо.

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5589
  • Все по палатам!
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #16 : 09 Октября 2015, 00:08:54 »
virusoft,
Без знания языка программирования, никакое знание алгоритмов не спасет от фиаско
Палка то о двух концах... надо и то и то изучать, и еще много чего.
Извините, я все еще учусь

Оффлайн orionit

  • Автор темы
  • Активист
  • *
  • Сообщений: 581
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #17 : 09 Октября 2015, 00:09:53 »
virusoftPilot6,
Большое спасибо за наставления приму как должное и начну с паскаля, но а какую литературу могут профи посоветовать, просто гугл опять кашу выдает.
Всем добра как у бобра, а если вы и без добра добры, значит вы в душе бобры.

Оффлайн virusoft

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
    • Virusoft
Re: Нужен совет будущему драйверо-писателю.
« Ответ #18 : 09 Октября 2015, 00:11:36 »
SergeyIT,
Алгоритм не привязан к языку программирования.
Как пример, алгоритм зажигания спички.
Если работает - не трогай. Linux - гибкая система, но один раз прогнувшись может обратным ходом распрямиться и ударить по самому (…) месту. Думай о будущем и все будет хорошо.

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #19 : 09 Октября 2015, 00:18:30 »
orionit,
Стыдно сказать, но  я ни одной книжки по программированию в жизни не прочитал. Поэтому не посоветую.
Когда я учился, то и книжек особо не было. Потом как-то не было необходимости.
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн virusoft

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
    • Virusoft
Re: Нужен совет будущему драйверо-писателю.
« Ответ #20 : 09 Октября 2015, 00:19:39 »
virusoftPilot6,
Большое спасибо за наставления приму как должное и начну с паскаля, но а какую литературу могут профи посоветовать, просто гугл опять кашу выдает.
Если ты хочешь писать драйвера, как указал в названии топика, то лучший выбор, на мой взгляд, это ассемблер. Но после изучения алгоритмов и кое-каких аппаратных моментов конкретного устройства.
Если работает - не трогай. Linux - гибкая система, но один раз прогнувшись может обратным ходом распрямиться и ударить по самому (…) месту. Думай о будущем и все будет хорошо.

Оффлайн orionit

  • Автор темы
  • Активист
  • *
  • Сообщений: 581
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #21 : 09 Октября 2015, 00:21:00 »
virusoft,
Но Pilot6,
же сказал что дрова на асемблере не пишут под линукс.
Всем добра как у бобра, а если вы и без добра добры, значит вы в душе бобры.

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5589
  • Все по палатам!
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #22 : 09 Октября 2015, 00:24:47 »
virusoft, паскаль в линуксе почти не используется... лучшее, что я читал, это описание Object Pascal (Delphi) из комплекта документации к Дельфи2 (или 3,4, не помню) - была вроде бы переведена. Но это не классический Паскаль.
Извините, я все еще учусь

Оффлайн virusoft

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
    • Virusoft
Re: Нужен совет будущему драйверо-писателю.
« Ответ #23 : 09 Октября 2015, 00:25:58 »
virusoft,
Но Pilot6,
же сказал что дрова на асемблере не пишут под линукс.
В процессе изучения паскаля, си и ассемблера ты поймешь что писать можно на любом языке программирования. Однако ты часто будешь встречать фразу: В некоторых случаях, когда важна скорость и эффективность без использования ассемблера не обойтись. Кстати в современных версиях компиляторов ассемблер встроенный, как в паскале, так и в си.

Пользователь решил продолжить мысль 09 Октября 2015, 00:27:16:
virusoft, паскаль в линуксе почти не используется... лучшее, что я читал, это описание Object Pascal (Delphi) из комплекта документации к Дельфи2 (или 3,4, не помню) - была вроде бы переведена. Но это не классический Паскаль.
Свои программы для Linux я пишу исключительно на паскале. Среда программирования Lazarus.
Если работает - не трогай. Linux - гибкая система, но один раз прогнувшись может обратным ходом распрямиться и ударить по самому (…) месту. Думай о будущем и все будет хорошо.

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5589
  • Все по палатам!
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #24 : 09 Октября 2015, 00:38:24 »
Свои программы для Linux я пишу исключительно на паскале. Среда программирования Lazarus.
Можно, конечно, и на паскале. У меня веб сайт Лазарусом скомпилен (в Windowsх на Дельфи был написан), лень переписывать. Однако все другие рабочие программы перевел и пишу на С++ (Qt) или Си, в линуксе использование паскаля неудобно, мало кто поддерживает интерфейсы для Паскаля.
Извините, я все еще учусь

Оффлайн virusoft

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
    • Virusoft
Re: Нужен совет будущему драйверо-писателю.
« Ответ #25 : 09 Октября 2015, 01:02:09 »
SergeyIT,
Смотря как предполагается использовать программу. Можно на ассемблер перенести, но затраты на написание кода будут совсем другие. Каждый делает в том, что ему больше нравиться и что он больше и лучше знает. Но без знания алгоритмов, а тем более аппаратных нюансов, как обозначил ТС свое желание писать драйвера, ни на каком языке не напишешь.
Если работает - не трогай. Linux - гибкая система, но один раз прогнувшись может обратным ходом распрямиться и ударить по самому (…) месту. Думай о будущем и все будет хорошо.

Оффлайн orionit

  • Автор темы
  • Активист
  • *
  • Сообщений: 581
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #26 : 09 Октября 2015, 01:25:49 »
Всем спасибо за советы, но я решил так пока попробую освоить ассемблер nasm потом уже за СИ возьмусь, но интересует где брать компилятор для данного ассемблера?
Всем добра как у бобра, а если вы и без добра добры, значит вы в душе бобры.

Оффлайн virusoft

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
    • Virusoft
Re: Нужен совет будущему драйверо-писателю.
« Ответ #27 : 09 Октября 2015, 01:26:16 »
Всем спасибо за ответы, но теперь у меня возник вопрос я остановил свой выбор на асемблере nasm буду учить по книге Андрея Викторовича Столярова, так вот в чем вопрос где и как можно скачать компилятор.
Есть сайт. http://ya.ru Там все просто. Вводишь строку: "компилятор nasm скачать" и выбираешь удобный способ скачивания из предложенных вариантов. Возможно нужный вариант будет на 3-5 странице.
Если работает - не трогай. Linux - гибкая система, но один раз прогнувшись может обратным ходом распрямиться и ударить по самому (…) месту. Думай о будущем и все будет хорошо.

Оффлайн vicmic

  • Участник
  • *
  • Сообщений: 191
  • Scientia potentia est (Знание - сила)
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #28 : 09 Октября 2015, 05:52:16 »
Всем спасибо за советы, но я решил так пока попробую освоить ассемблер nasm потом уже за СИ возьмусь, но интересует где брать компилятор для данного ассемблера?
   В давние времена (когда компьютеры были большими и далеко не персональными) мы писали на Ассемблере PDP-11. (Конечно, "в школе" изучали и Алгол, и Фортран, и др.). Помню, что написать было полдела, а вот отлаживать - те ещё пляски с бубном. Я тогда писал систему управления сейсмостанцией.
   И вот к нам пришёл на практику один студент с физфака. Дали ему написать часть системы (уже не помню какую, но довольно значительную). Он приходит через 2-3 недели с большой сумкой, а в ней лежат папки (штук 10) с тетрадными листочками, вложенными один в другой, и на каждом написано несколько строк. "Что это?"- спрашиваем. "Программа"- отвечает. И начинает показывать. Код Ассемблера мы там увидели где-то на 5-8 уровне вложенности вниз! А сверху - обычным человеческим языком написаны алгоритмы, внутри - расшифровка каждого шага, и т.д. - это было программирование сверху вниз, но доведённое до совершенства. Внутрь можно было вставить код выполнения шага программы на любом языке, который понимает система. В нашем случае это был Ассемблер, но можно было и до машинных кодов дойти.
    Но самое удивительное было, когда он вколотил все Ассемблерные команды и откомпилировал свой код - программа заработала сразу правильно без всякой отладки! "Как тебе это удалось?"- спрашиваем. "А я всё отладил уже на бумаге - это же легко - листочек выдернул, написал новый и вставил - и так всё ниже и ниже, вплоть до команд."
    А отладка всё же была - но уже на уровне постановки задачи. Как всегда тот, кто задачу ставил, не до конца всё сам понимал...

    Это я к тому, что алгоритмы, математику и логику никто не отменял - без них это будет мученье, а не программирование.

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3032
    • Просмотр профиля
Re: Нужен совет будущему драйверо-писателю.
« Ответ #29 : 09 Октября 2015, 09:40:45 »
А я никогда не читал ничего по Паскалю или Бейсику и на них не писал.
1-й язык, на котором у меня были реальные программы - это PL/1,
но в ВУЗе я немного познакомился с Алголом. По образованию я не программист.
Начать изучение языков программирования можно и с ассемблера, это поможет
понять, как реализуются операторы языка высокого уровня, но на это уйдёт
много времени. Легче будет начать с языка C, он близок к естественному отражению
вычислительных операций, как и FortRan. На нём почти прямо записываются алгоритмы.
И Linux написана на C.
Компилятор для ассемблера и так есть в Linux.
« Последнее редактирование: 09 Октября 2015, 15:21:17 от Peter_I »
Пётр.

 

Страница сгенерирована за 0.049 секунд. Запросов: 25.