The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск операционной системы Redox OS 0.6, написанной на языке Rust "
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Выпуск операционной системы Redox OS 0.6, написанной на язык..." +/
Сообщение от Аноним (-), 29-Дек-20, 13:33 
> Вызовы ядра на C, Карл, потому что на расте это сделать невозможно.

Ты обо*рался. Причем аж два раза.
https://github.com/torvalds/linux/blob/fcadab740480e0e0e9fa9...


static inline long stub_syscall2(long syscall, long arg1, long arg2)
{
    long ret;

    __asm__ volatile (__syscall
        : "=a" (ret)
        : "0" (syscall), "D" (arg1), "S" (arg2) : __syscall_clobber );

    return ret;
}


https://github.com/kmcallister/syscall.rs/blob/master/src/pl...

#[inline(always)]
pub unsafe fn syscall2(n: usize, a1: usize, a2: usize) -> usize {
    let ret : usize;
    asm!("syscall" : "={rax}"(ret)
                   : "{rax}"(n), "{rdi}"(a1), "{rsi}"(a2)
                   : "rcx", "r11", "memory"
                   : "volatile");
    ret
}


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск операционной системы Redox OS 0.6, написанной на языке Rust , opennews, 26-Дек-20, 11:54  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру