xv6-cs450/ulib.c
kaashoek 7837c71b32 disable all interrupts when acquiring lock
user program that makes a blocking system call
2006-07-06 21:47:22 +00:00

67 lines
627 B
C

int
fork()
{
asm("mov $1, %eax");
asm("int $48");
}
int
exit()
{
asm("mov $2, %eax");
asm("int $48");
}
void
cons_putc(int c)
{
asm("mov $4, %eax");
asm("int $48");
}
int
puts(char *s)
{
int i;
for(i = 0; s[i]; i++)
cons_putc(s[i]);
return i;
}
int
pipe(int fds[])
{
asm("mov $5, %eax");
asm("int $48");
}
int
read(int fd, char *buf, int n)
{
asm("mov $7, %eax");
asm("int $48");
}
int
write(int fd, char *buf, int n)
{
asm("mov $6, %eax");
asm("int $48");
}
int
close(int fd)
{
asm("mov $8, %eax");
asm("int $48");
}
int
block(void)
{
asm("mov $9, %eax");
asm("int $48");
}