X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Finclude%2Fcommon.h;h=398724da75b57d369958e95c03a5a62307412fa8;hb=391af300bd045791b8aaf50cf44b2d503c763213;hp=f3401346d284c6af18aaa3cf0f1e50dce0ea2094;hpb=466eda7c917791866a29c253c6c22197faf41bf7;p=tpg%2Facess2.git diff --git a/Kernel/include/common.h b/Kernel/include/common.h index f3401346..398724da 100644 --- a/Kernel/include/common.h +++ b/Kernel/include/common.h @@ -74,9 +74,10 @@ extern Uint32 ind(Uint16 Port); extern Uint64 inq(Uint16 Port); // --- Memory --- extern tPAddr MM_Allocate(Uint VAddr); -extern void MM_Deallocate(Uint VAddr); -extern int MM_Map(Uint VAddr, tPAddr PAddr); -extern tPAddr MM_GetPhysAddr(Uint VAddr); +extern void MM_Deallocate(Uint VAddr); //!< Deallocate a page +extern int MM_Map(Uint VAddr, tPAddr PAddr); //!< Map a page +extern tPAddr MM_GetPhysAddr(Uint VAddr); //!< Get the physical address of a page +extern int MM_IsUser(Uint VAddr, int Length); //!< Checks if a memory address is valid user memory extern void MM_SetFlags(Uint VAddr, Uint Flags, Uint Mask); extern Uint MM_MapTemp(tPAddr PAddr); extern void MM_FreeTemp(Uint PAddr); @@ -85,25 +86,31 @@ extern void MM_UnmapHWPage(Uint VAddr, Uint Number); extern tPAddr MM_AllocPhys(); extern void MM_RefPhys(tPAddr Addr); extern void MM_DerefPhys(tPAddr Addr); -extern void *memcpy(void *dest, void *src, Uint count); -extern void *memcpyd(void *dest, void *src, Uint count); +extern int memcmp(const void *m1, const void *m2, Uint count); +extern void *memcpy(void *dest, const void *src, Uint count); +extern void *memcpyd(void *dest, const void *src, Uint count); extern void *memset(void *dest, int val, Uint count); extern void *memsetd(void *dest, Uint val, Uint count); +extern Uint16 LittleEndian16(Uint16 Val); +extern Uint16 BigEndian16(Uint16 Val); +extern Uint32 LittleEndian32(Uint32 Val); +extern Uint32 BigEndian32(Uint32 Val); // --- Strings --- -extern Uint strlen(char *Str); -extern char *strcpy(char *__dest, char *__src); -extern int strcmp(char *__dest, char *__src); -extern int strncmp(char *Str1, char *Str2, size_t num); -extern int strucmp(char *Str1, char *Str2); -extern char *strdup(char *__str); -extern int strpos(char *Str, char Ch); -extern int strpos8(char *str, Uint32 search); +extern Uint strlen(const char *Str); +extern char *strcpy(char *__dest, const char *__src); +extern int strcmp(const char *__str1, const char *__str2); +extern int strncmp(const char *Str1, const char *Str2, size_t num); +extern int strucmp(const char *Str1, const char *Str2); +extern char *strdup(const char *__str); +extern int strpos(const char *Str, char Ch); +extern int strpos8(const char *str, Uint32 search); extern void itoa(char *buf, Uint num, int base, int minLength, char pad); extern int ReadUTF8(Uint8 *str, Uint32 *Val); extern int WriteUTF8(Uint8 *str, Uint32 Val); extern Uint rand(); // --- Heap --- extern void *malloc(size_t size); +extern void *calloc(size_t num, size_t size); extern void *realloc(void *ptr, size_t size); extern void free(void *Ptr); extern int IsHeap(void *Ptr); @@ -117,6 +124,7 @@ extern int Time_CreateTimer(int Delta, void *Callback, void *Argument); extern void Time_RemoveTimer(int ID); extern void Time_Delay(int Delay); // --- Threads --- +extern int Proc_SpawnWorker(); extern int Proc_Spawn(char *Path); extern void Threads_Exit(); extern void Threads_Yield();