Commit Graph

1747 Commits

Author SHA1 Message Date
Gregory Nutt
f73a18ae39 Move all file operations from libc/aio to fs/aio. These will need to be kernel routines in order to handler issues with using file descriptors on worker thread 2014-10-05 15:33:31 -06:00
Gregory Nutt
9a1b011178 Initiail implementation of lio_listio() and rethinking of signal logic 2014-10-05 11:43:42 -06:00
Gregory Nutt
eeaae40d0c Initial implementation of aio_fsync() 2014-10-05 08:53:13 -06:00
Gregory Nutt
a4861c7cb7 Iniial implementatin of aio_cancel() 2014-10-05 08:22:39 -06:00
Gregory Nutt
c274acc48f Move AIO signal logic to a common location in aio_signal.c. Also fix several typos 2014-10-05 06:53:56 -06:00
Gregory Nutt
31cdcde73a Add definitions for SIGPOLL 2014-10-05 06:02:37 -06:00
Gregory Nutt
e8cef249cc Initial implementation of aio_write() 2014-10-04 17:30:24 -06:00
Gregory Nutt
fa28c51c75 Fleshes out aio_read implementation 2014-10-04 14:44:57 -06:00
Gregory Nutt
9e8a4dd229 Add skeleton file for eventual implementation of aio_read() 2014-10-04 14:22:00 -06:00
Gregory Nutt
920680041a Add aio.h header file 2014-10-04 09:59:44 -06:00
Gregory Nutt
032fbb7ace Add pread(0 and pwrite() system calls 2014-10-04 07:31:45 -06:00
Gregory Nutt
948be542a1 Add pread() and pwrite() 2014-10-04 07:31:13 -06:00
Gregory Nutt
4764c95670 Implement creat() as a macro 2014-10-04 06:44:57 -06:00
Gregory Nutt
73afa66228 Cosmetic update to comments/README 2014-10-01 15:02:49 -06:00
Gregory Nutt
71b574f26c Repartition some message queue logic: sched/mqueue should have all mqueue knowledge; fs/mqueue should deal only with inodes 2014-09-30 08:03:39 -06:00
Gregory Nutt
1f2cc9f4fe Complete re-implementation of mq_close 2014-09-29 15:33:34 -06:00
Gregory Nutt
584d0fe4ad Complete re-implementation of mq_open() 2014-09-29 14:59:31 -06:00
Gregory Nutt
9e975a217d Separate mqueue allocation logic from mq_open() and put it in sched/mqueue/mq_msgqalloc.c 2014-09-29 14:09:31 -06:00
Gregory Nutt
e3fa34681b Convert mqueue structure for use in VFS as inode data; rename mqueue_inode_s; remove links, reference counts and name from mqueue structure. These will be replaced by VFS data. Remove g_msgqueues and mq_findnamed.c; these will be replace with VFS logic 2014-09-29 13:19:11 -06:00
Gregory Nutt
1b2729e35e More testing, bugfixes and integration of VFS-based named semaphores 2014-09-28 17:30:42 -06:00
Gregory Nutt
650a0d0615 Completes VFS-based named semaphore implemetation. Still a little buggy 2014-09-28 15:58:56 -06:00
Gregory Nutt
30694f064c Add VFS-based sem_open() implementation 2014-09-28 14:35:17 -06:00
Gregory Nutt
aed3fe045e Add a simple named semaphore test to the OS test 2014-09-28 13:02:36 -06:00
Gregory Nutt
242b34cf46 Create a build structure that will (eventually) support using the VFS to manage named semaphores 2014-09-28 12:19:01 -06:00
Gregory Nutt
39ff9d626e Move inode and VFS utils from fs/. to fs/inode/. 2014-09-28 10:53:40 -06:00
Gregory Nutt
c0b12cd42d Add basic data structures that will allow us to move named semaphore support out of the OS and into the VFS (not complete). 2014-09-28 10:15:49 -06:00
Gregory Nutt
a41c1de32c Add basic data structures that will allow us to move named semaphore support out of the OS and into the VFS (not complete). 2014-09-28 10:15:33 -06:00
Gregory Nutt
7c6ba7bb77 Add prototype for MTD R/W buffering support 2014-09-25 09:31:03 -06:00
Gregory Nutt
b33c2d9cef Move include/nuttx/mm.h to include/nuttx/mm/mm.h 2014-09-24 07:29:09 -06:00
Gregory Nutt
1863370672 Move include/nuttx/shm.h to include/nuttx/mm/shm.h 2014-09-24 07:05:02 -06:00
Gregory Nutt
2fa7431ee7 Move include/nuttx/gran.h to include/nuttx/mm/gran.h 2014-09-24 06:55:26 -06:00
Gregory Nutt
835c91b03a Add support for a per-process virtual page allocator. This is a new member of the task_group_s structure. The allocaor must be initialized when a new user process is started and uninitialize when the process group is finally destroyed. It is used by shmat() and shmdt() to pick the virtual address onto which to map the shared physical memory. 2014-09-23 16:04:39 -06:00
Gregory Nutt
566dc8dd38 Add interfaces to support un-initializing a granule allocator. 2014-09-23 15:50:45 -06:00
Gregory Nutt
edbaed19f9 Add logic necessary to handler remapping of shared memory on contex switches 2014-09-23 13:19:30 -06:00
Gregory Nutt
bf1e6224d5 Add platform-specific interfaces needed to support the shared memory feature 2014-09-23 12:16:44 -06:00
Gregory Nutt
5efd5738e9 Flesh out basic logic for shmget() 2014-09-23 10:42:18 -06:00
Gregory Nutt
a73a3ef99f Add shared memory initializatin logic 2014-09-23 08:46:31 -06:00
Gregory Nutt
242d5f2068 Add README files and configuration support for the shared memory logic 2014-09-23 07:11:47 -06:00
Gregory Nutt
29075cf666 Add system calls for shared memory interfaces 2014-09-22 15:24:09 -06:00
Gregory Nutt
18ce64d61e Add the build framework and skeleton files for the shared memory feature (no logic yet provided) 2014-09-22 14:53:56 -06:00
Gregory Nutt
34a057334c Update SMART FS procfs support. From Ken Pettit 2014-09-22 11:19:49 -06:00
Gregory Nutt
b660a708d4 Add shared memory definitions, types, prototypes 2014-09-22 09:29:37 -06:00
Gregory Nutt
ffb60d064b More naming changes to get the stm3240g-eval/nxterm configuration building again 2014-09-20 15:53:28 -06:00
Gregory Nutt
fefc4f624b Change all occurrences of NxConsole to NxTerm 2014-09-20 15:01:50 -06:00
Gregory Nutt
0b67b111ae Rename CONFIG_NXCONSOLE* to CONFIG_NXTERM* 2014-09-20 14:18:08 -06:00
Gregory Nutt
925fc9ad81 First round of changes to get the ELF configuration building again 2014-09-16 15:37:05 -06:00
Gregory Nutt
31824f5b53 execl() is not a system interface. It belongs in libc and should not have a system call associated with it. 2014-09-15 10:17:04 -06:00
Gregory Nutt
da7a440b35 execv() is a basic system interface. It should not be in libc/ but rather in sched/task. Its symboltable helper logic also belongs in the kernel but belings in binfmt/ with the other symbol table logic 2014-09-15 10:15:19 -06:00
Gregory Nutt
62880f60c4 In kernel mode, we have to duplicate the callers argv[] buffer when exec'ing new tasks. When the argv[] buffer is needed, the caller's address environment will not longer be in place 2014-09-14 14:10:23 -06:00
Gregory Nutt
3649dab9bd Initial integration of kernel stack (does not work) 2014-09-14 11:19:34 -06:00