By liran bh | 5/16/2016 | Linux User Space

Calling System Call Directly

#include <stdio.h>
#include <stdlib.h>
#include <sys/syscall.h>
#include <unistd.h>
 
int myadd(int a,int b)
{
    int res;
    asm volatile ("movl $320,%%eax; movl %1,%%ebx; movl %2,%%ecx;int $0x80; movl %%eax,%0;":
            "=r"(res): "r"(a),"r"(b) : "eax","ebx","ecx");
    return res;
}
 
int main(void) {
    int x=9,y=8,z;
    puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */
    //z=syscall(320,x,y);
    z=myadd(x,y);
    printf("res=%d\n",z);
    return EXIT_SUCCESS;
}

{{CommentsModel.TotalCount}} Comments

Your Comment

{{CommentsModel.Message}}

Recent Stories

Top DiscoverSDK Experts

User photo
3355
Ashton Torrence
Web and Windows developer
GUI | Web and 11 more
View Profile
User photo
3220
Mendy Bennett
Experienced with Ad network & Ad servers.
Mobile | Ad Networks and 1 more
View Profile
User photo
3060
Karen Fitzgerald
7 years in Cross-Platform development.
Mobile | Cross Platform Frameworks
View Profile
Show All
X

Compare Products

Select up to three two products to compare by clicking on the compare icon () of each product.

{{compareToolModel.Error}}

Now comparing:

{{product.ProductName | createSubstring:25}} X
Compare Now