Add support for some basic system calls and args handling correctly. #29
@@ -161,19 +161,19 @@ syscall_read (int fd, void *buffer, unsigned size)
|
|||||||
validate_user_pointer (buffer, size);
|
validate_user_pointer (buffer, size);
|
||||||
|
|
||||||
if (fd == STDIN_FILENO)
|
if (fd == STDIN_FILENO)
|
||||||
{
|
{
|
||||||
/* Reading from the console. */
|
/* Reading from the console. */
|
||||||
char *write_buffer = buffer;
|
char *write_buffer = buffer;
|
||||||
for (int i = 0; i < size; i++)
|
for (int i = 0; i < size; i++)
|
||||||
write_buffer[i] = input_getc ();
|
write_buffer[i] = input_getc ();
|
||||||
|
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Reading from a file. */
|
/* Reading from a file. */
|
||||||
return 0; // TODO: Implement Write to Files
|
return 0; // TODO: Implement Write to Files
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@@ -231,4 +231,4 @@ validate_user_pointer (const void *ptr, size_t size)
|
|||||||
thread_exit ();
|
thread_exit ();
|
||||||
|
|
||||||
return ptr;
|
return ptr;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user