Levels: first proposal of how we define a "level 1" Fuzix system
authorAlan Cox <alan@linux.intel.com>
Sun, 8 Nov 2015 17:20:28 +0000 (17:20 +0000)
committerAlan Cox <alan@linux.intel.com>
Sun, 8 Nov 2015 17:20:28 +0000 (17:20 +0000)
We need some kind of line for the smaller 8bit boxes and having everyone with
different random varieties of features will be a support nightmare

Kernel/doc/Levels [new file with mode: 0644]

diff --git a/Kernel/doc/Levels b/Kernel/doc/Levels
new file mode 100644 (file)
index 0000000..e235e14
--- /dev/null
@@ -0,0 +1,154 @@
+Proposed Features For Each Level
+
+
+Level  1
+---------
+
+System Calls:
+       access
+       alarm
+       brk
+       chdir
+       chmod
+       chown
+       chroot
+       close
+       dup
+       dup2
+       execve
+       _exit
+       fchdir
+       fchmod
+       fchown
+       fcntl
+       flock
+       fork
+       fstat
+       getegid
+       geteuid
+       _getfsys
+       getgid
+       getpgrp
+       getpid
+       getppid
+       getuid
+       ioctl
+       kill
+       link
+       lseek
+       mkdir
+       mknod
+       mount
+       nice
+       open
+       pause
+       pipe
+       read
+       rename
+       rmdir
+       sbrk
+       sched_yield     
+       setgid
+       setpgrp
+       setuid
+       sigdisp
+       signal
+       stat
+       stime
+       sync
+       _time
+       times
+       uadmin
+       umask
+       umount
+       _uname
+       unlink
+       utime
+       waitpid
+       write
+
+Signals (kernel properties)
+       SIGHUP
+       SIGINT
+       SIGQUIT
+       SIGILL
+       SIGABRT
+       SIGBUS
+       SIGFPE
+       SIGKILL
+       SIGPIPE
+       SIGALRM
+       SIGTERM
+       SIGSTKFLT
+       SIGCONT         }       Need completing
+       SIGSTOP         } 
+
+Terminal
+       VMIN
+       VEOF
+       VTIME
+       VERASE
+       VINTR
+       VKILL
+       VQUIT
+       VSTART
+       VSTOP
+       At least 132 bytes buffer
+
+Filesystem
+       PATH_MAX 512+
+
+Level  2
+---------
+
+Features:
+       Core dumps
+       Job control             
+
+Potential System Calls:
+       acct
+       get/setgroups
+       memalloc
+       memfree
+       profil
+       select
+       ulimit/rlimit
+       rusage
+       sigaction() and further POSIX features (but which need to be in L1)
+       (sighold/sigignore/sigpause etc)
+
+Signals
+       SIGCHLD         (???)
+       SIGTSTP
+       SIGTTIN
+       SIGTTOU
+       SIGXCPU
+       SIGXFSZ
+       SIGVTALRM
+       SIGPROF
+       SIGWINCH        (???)
+       SIGIO
+       SIGPOLL
+
+Terminal
+       VSUSP
+       VDSUSP
+       VLNEXT          (???)
+       Pty pairs
+       256 byte input buffer (POSIX compliant)
+
+Filesystem
+       Look at fs switch options for bigger boxes
+       Asynchronous I/O (? - probably not worth it)
+       POSIX shared memory on flat memory/bigger boxes
+       Symbolic links ?
+       True pathconf/fpathconf if fs switch
+       True directory scanning funcs
+       Proper full PATH_MAX
+
+
+Independent Add On Chunks
+-------------------------
+
+TCP/IP (but really also needs to include select/poll)
+