Поддержка POSIX
Posted: Mon Dec 10, 2007 8:26 pm
Решил спросить у многоуважемых разработчиков возмож-но ли сделать поддержку стандарта POSIX реально системных вызовов вполне для этого достаточно. Нужна только либа с функцими из стандарта небольшой перечень того что реально нужно было бы пожалуй как минимум:
fork - создать дочерный процесс (ну или просто процесс)
createThread - создать поток
wait - подождать пока не завершится дочерний процесc
execve - переместить образ памяти процесса (например в свопинг которого вобщем нет)
exit - завершить процесс и возвратить статуc
sigaction - калбек на который будет вызван сигналу (кроче реакция на прерывание)
sigreturn - возвратится из обработчика сигналла
kill - посылать сигналл процессу
pause - остановить процесс до прихода следующего сигналла
creat - создать файл
open - открыть файл
close - закрыть
read - читать данные из файла
write - писать
seek - передвинуть указатель текущей позицци в файле
ftat - получить инфо о состоянии файла
dup - новый дискриптор к уже открытому файлу
pipe - создать канал для передачи сообщения между процессами (неуверен что это возможно в минует)
acsess - проверить доступность файла
rename - переименовать файл
mkdir - создать каталог
rmdir - удалить каталог
link/ulink создать удалить элемент каталога
mount/umount - подключить/отключить файловую систему (думаю что в общем это и не нужно но всетаки было бы неплохо особенно если юзается NTFS)
synk - все блоки на свопинг (хоть свопинга и нет)
chdir - сменить рабочий каталог
time получить время в секундах от некоего числа например 1-го января 2001 года т.е. милениума
stime - установить это самое время от милениума
utime - установить время последнего доступа к файлу
times - получить время работы процесса
Все это реально можно бы сделать как набор асмовских макросов или бинарников с подпрограммами, а потом кто хочет может их подключать к себе скажем в С или там Pascal,Oberon,ADA и т.д. ну или юзать в асме. Как по мне реально лучше нежели API с гордым именованием функция 11,12,13,14... И к тому-же в общем какая-никакая поддержка POSIX.
fork - создать дочерный процесс (ну или просто процесс)
createThread - создать поток
wait - подождать пока не завершится дочерний процесc
execve - переместить образ памяти процесса (например в свопинг которого вобщем нет)
exit - завершить процесс и возвратить статуc
sigaction - калбек на который будет вызван сигналу (кроче реакция на прерывание)
sigreturn - возвратится из обработчика сигналла
kill - посылать сигналл процессу
pause - остановить процесс до прихода следующего сигналла
creat - создать файл
open - открыть файл
close - закрыть
read - читать данные из файла
write - писать
seek - передвинуть указатель текущей позицци в файле
ftat - получить инфо о состоянии файла
dup - новый дискриптор к уже открытому файлу
pipe - создать канал для передачи сообщения между процессами (неуверен что это возможно в минует)
acsess - проверить доступность файла
rename - переименовать файл
mkdir - создать каталог
rmdir - удалить каталог
link/ulink создать удалить элемент каталога
mount/umount - подключить/отключить файловую систему (думаю что в общем это и не нужно но всетаки было бы неплохо особенно если юзается NTFS)
synk - все блоки на свопинг (хоть свопинга и нет)
chdir - сменить рабочий каталог
time получить время в секундах от некоего числа например 1-го января 2001 года т.е. милениума
stime - установить это самое время от милениума
utime - установить время последнего доступа к файлу
times - получить время работы процесса
Все это реально можно бы сделать как набор асмовских макросов или бинарников с подпрограммами, а потом кто хочет может их подключать к себе скажем в С или там Pascal,Oberon,ADA и т.д. ну или юзать в асме. Как по мне реально лучше нежели API с гордым именованием функция 11,12,13,14... И к тому-же в общем какая-никакая поддержка POSIX.