реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> YAGARTO и syscalls
Атмег
сообщение Jul 21 2010, 12:22
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 17-05-07
Пользователь №: 27 787



Пытаюсь перейти с YAGARTO версии 2.18 на более новую. Линкер говорит, что не реализованы какие то системные вызовы типа _close, _write, _sbrk, _lseek, _read.
Как эти вызовы написать, где взять информацию? И главное какой смысл в этом, почему они не реализованы как в предыдущих версиях?
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jul 21 2010, 14:48
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(Атмег @ Jul 21 2010, 18:22) *
Пытаюсь перейти с YAGARTO версии 2.18 на более новую. Линкер говорит, что не реализованы какие то системные вызовы типа _close, _write, _sbrk, _lseek, _read.
Как эти вызовы написать, где взять информацию? И главное какой смысл в этом, почему они не реализованы как в предыдущих версиях?


Гляньте вот здесь (аттач там).

_sbrk подтягивается от использования malloc(). Он, в свою очередь, подтягивается от printf. _write() - вероятно тоже от printf. Остальное откуда - не знаюsmile.gif Смотрите map-файл, там всё есть.

Что касается смысла... Изменили ("улучшили") newlib, о embedded не особо думали, думали о реентрабельности.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Атмег
сообщение Jul 21 2010, 15:58
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 17-05-07
Пользователь №: 27 787



Спасибо.
Malloc не использую, printf у меня свой.. Похоже от sscanf подтянулись...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:10
Рейтинг@Mail.ru


Страница сгенерированна за 0.01358 секунд с 7
ELECTRONIX ©2004-2016