Консультация № 182496
12.03.2011, 19:41
48.67 руб.
0 6 0
Здравствуйте уважаемые эксперты!!!

ОС ASP Linux, компилятор gcc. Нужно реализовать любую мат.функцию с выводом результата и скомпилировать как модуль ядра, я предложил сделать калькулятор. Интересующий вопрос:
Какие заголовочные файлы можно использовать среди <iostream>, <cstdio> и <conio> или может их аналоги для *nix есть? Нужна ли приставка .h?

В модуле нужны функции ввода/вывода данных, желательно и gets(), функция getch(), а также функция очистки экрана. Хочу переделать калькулятор написанный мною на 1-ом курсе и сделать из него модуль ядра, если это возможно. Спасибо большое.

Обсуждение

давно
Академик
20764
1861
12.03.2011, 20:16
общий
В ядре, в том числе и в модулях, нельзя:
- использовать какие-либо стандартные библиотеки, и, соответственно, стандартные заголовки
- использовать C++
Для выполнения кое-каких полезных функций есть собственная библиотека - не очень обширная. В частности, для вывода есть kprintf (куда будет выведено - зависит от конфигурации. Вывод может вообще потеряться). а для работы с динамической памятью - kalloc и kfree
Неизвестный
12.03.2011, 23:46
общий
Адресаты:
Понял, спасибо
давно
Академик
20764
1861
13.03.2011, 00:22
общий
Это ещё не всё: что-либо делать в ядре нужно исключительно по событиям. Ждать ничего нельзя (можно - другие события, но от этого радости не слишком много)
В вашем случае, вероятно, надо написать обработчик своего системного вызова, в аргументах которого передавать операнды (на самом деле - адреса) и адрес для результата.
А для заполнения параметров, отправки этого системного вызова и показа результата - написать обычную программу.
Неизвестный
13.03.2011, 01:01
общий
Адресаты:
Я так понимаю и аргументы коммандной строки иначе передаются... Для обычной лабораторной - это уж очень накладно будет, реализую простенькую мат. операцию и выведу на консоль, а по поводу системных вызовов и всего остального, что потребуется - оформлю лучше как курсовую работу, нам разрешили тему самостоятельно выбрать. Ничего, я заочник, мне не привыкать Спасибо Вам большое
давно
Академик
20764
1861
13.03.2011, 11:07
общий
Можно и через параметры. Но они могут быть только целые и строки (или их массивы)
Смотрите там же
Неизвестный
16.03.2011, 23:50
общий
Что делать с этим вопросом? Закрыть или попросить Сергея оформить свои советы ответом?
Форма ответа