написание glibc API для системного вызова [дубликат]

Возможный дубликат:

Нужна помощь с источником glibc

Я понимаю, как реализовать наши собственные системные вызовы в ядре Linux. Я знаю, что мы можем назвать это сsyscall() или с_asm() в программе c.

Но я хочу понять, как написать glibc api для этого нового системного вызова?

Какopen() а такжеread() Отображение вызовов функции glibc в системный вызов в ядре?

char      message[ ] = "Hello!\n";

int main( void )
{
        write( 1, message, 7 );
        exit( 0 );
}

Когда я конвертирую вышеупомянутую программу в сборку, она дает ~

main:
    leal    4(%esp), %ecx
    andl    $-16, %esp
    pushl   -4(%ecx)
    pushl   %ebp
    movl    %esp, %ebp
    pushl   %ecx
    subl    $20, %esp
    movl    $7, 8(%esp)
    movl    $message, 4(%esp)
    movl    $1, (%esp)
    call    write
    movl    $0, (%esp)
    call    exit
    .size   main, .-main
    .ident  "GCC: (Debian 4.3.2-1.1) 4.3.2"
    .section        .note.GNU-stack,"",@progbits

3, В "позвони пиши " Я думаю, что написать это вызов glibc здесь? что происходит после этого? как он сопоставляет вызов glibc с системным вызовом?

Ответы на вопрос(1)

Ваш ответ на вопрос