Commit Graph

161 Commits

Author SHA1 Message Date
Gregory Nutt dadbbb8ac5 Fix some misleading debug output 2014-09-26 14:58: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 398f7b594f 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:47 -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 2eb71d5a35 Fix an ordering problem in integration of kernel stack logic 2014-09-14 12:40:09 -06:00
Gregory Nutt 3649dab9bd Initial integration of kernel stack (does not work) 2014-09-14 11:19:34 -06:00
Gregory Nutt 1329c29ecd ELF: Critical bugfix.. BSS was not being cleared 2014-09-12 10:32:23 -06:00
Gregory Nutt 67838239c4 Update some comments/function headers 2014-09-11 17:15:26 -06:00
Gregory Nutt 0fc55d042f Misc fixes to repair some of the breakage to the SAMA5D4-EK elf configuration caused by changes for the knsh configuration 2014-09-11 10:31:12 -06:00
Gregory Nutt 205c23b9d6 Add logic to initialize the per-process user heap when each user process is started 2014-09-10 15:55:36 -06:00
Gregory Nutt df4682fd1f Add configuration to use the fixed DRAM mapping for the page pool (if available) instead of remapping dynamically to access L2 page tables and page data. Also, add logic in address environment creation to initialize the shared data at the beginning of the .bss/.data process memory region. 2014-09-10 08:41:01 -06:00
Gregory Nutt 76957599a2 When allocating a stack for a new process using the user-sapce allocator, need to select the address environment first 2014-09-09 17:32:32 -06:00
Gregory Nutt c458e72b70 ELF relocations. Some relocation types do not have a named symbol associated with them. The design did not account for that case 2014-09-09 16:52:51 -06:00
Gregory Nutt b63eea45b6 Improved binfmt debug output 2014-09-07 13:47:01 -06:00
Gregory Nutt 39c95050ab Fix typo in ELF variable name (only see it when C++ support is enabled) 2014-09-07 13:46:13 -06:00
Gregory Nutt 23147c40a5 Remove final traces of the 8015 from the NuttX source tree 2014-09-01 13:21:15 -06:00
Gregory Nutt 205260d5e2 Reanem kzalloc to kmm_zalloc for consistency 2014-08-31 17:34:44 -06:00
Gregory Nutt 1780810d3d Rename kmalloc to kmm_malloc for consistency 2014-08-31 17:26:36 -06:00
Gregory Nutt 54fa3b0b59 Rename kfree to kmm_free for consistency with other naming conventions 2014-08-31 17:04:02 -06:00
Gregory Nutt 9aca0c1c84 Rename kumalloc to kumm_malloc and kuzalloc to kumm_zalloc for consistency with other naming 2014-08-31 16:24:24 -06:00
Gregory Nutt 9ad7dae4c1 Rename kufree to kumm_free for consistency with other naming 2014-08-31 16:15:11 -06:00
Gregory Nutt 9cd1ddada4 Rename kmemalign to kmm_memalign and krealloc to kmm_realooc for consistency with other naming 2014-08-31 15:27:37 -06:00
Gregory Nutt e3ff0689bb Rename CONFIG_NUTTX_KERNEL to CONFIG_BUILD_PROTECTED; Partially integrate new CONFIG_BUILD_KERNEL 2014-08-29 14:47:22 -06:00
Gregory Nutt 89593969be nuttx/sched: Remove explicit references to errno. That is a problem from within the kernel for certain configurations 2014-08-28 17:00:43 -06:00
Gregory Nutt ad53cabf34 ADDRENV: Use a group flag to determine if there is an address environment (instead of the thread type) 2014-08-27 09:37:28 -06:00
Gregory Nutt 0db7da1858 Add up_addrenv_coherent which will be called before address environment switches 2014-08-26 14:53:19 -06:00
Gregory Nutt b13d9b4161 Rename up_addrenv_assign() to up_addrenv_clone() and generalize its arguments so that can be used for other purposes 2014-08-26 12:16:05 -06:00
Gregory Nutt 7e0ce83e47 Can't dump loaded code unless we first establish the mappings 2014-08-26 10:42:42 -06:00
Gregory Nutt d52599fe8e Change when address environment is instantiated; there are/were locations where access is made to the allocation address environment when it is not yet in place 2014-08-26 07:57:30 -06:00
Gregory Nutt 66a5328a68 Cortex-A address environment: Fix some section mapping and address increments 2014-08-26 06:33:26 -06:00
Gregory Nutt 1725946447 Misc changed to get the SAMA5 ELF configuration with address environments working 2014-08-25 13:28:13 -06:00
Gregory Nutt e0a48b60b6 Change naming of ELF interfaces from arch_ to up_ for consistency 2014-08-25 06:47:14 -06:00
Gregory Nutt 7aea220ebf After cached related fix, the ELF example is now functional 2014-08-24 14:12:45 -06:00
Gregory Nutt 1708a133f5 Fix some compilation errors in ELF logic that were introduced in a recent commit 2014-08-24 12:57:02 -06:00
Gregory Nutt 241a7e17bd addrenv interface changes: up_addrenv_create() may need to create .text and .bss/.data separately because of differing access privileges (read/execute vs read/write). And, as a consequence, up_addrenv_vaddr() needs to be split into up_addrenv_vtext(0 and up_addrenv_vdata(). 2014-08-24 11:54:14 -06:00
Gregory Nutt 2cb9d5c7b0 Add addrenv.h; First cut at Cortex-A address environment structures; Add configuration options to setup address enviornment 2014-08-24 09:57:53 -06:00
Gregory Nutt 1624e2fbcf Change CONFIG_ADDRENV to CONFIG_ARCH_ADDRENV; change how it is selected -- the architecure must first declare support 2014-08-24 06:42:11 -06:00
Gregory Nutt e79d6e3c8b A few fixes for compilation errors due to recent address environment fixes 2014-08-22 15:55:00 -06:00
Gregory Nutt 1d586e6136 An address environment is the property of a task group, not of a thread 2014-08-22 12:32:34 -06:00
Gregory Nutt d798dd37a7 Replace os_internal.h with sched/sched.h in files that actually reference something in sched.h 2014-08-08 17:53:55 -06:00
Gregory Nutt 2dd9ce50c8 Clean-up up some warning 2014-07-11 11:58:46 -06:00
Gregory Nutt 5df891ff28 Fix an error in exec(). argv[] has not being passed 2014-06-15 13:22:44 -06:00
Gregory Nutt d864c38e31 ELF: Fix compilation error when CONFIG_ELF_DUMPBUFFER is defined. From Pelle Windestam 2014-06-12 07:53:31 -06:00
Gregory Nutt 8ef77ac3d9 Updated README and comments 2014-05-10 11:36:20 -06:00
Gregory Nutt 806aee8247 Move prun from interpreters/ to system/; And an NSH built-in appliation that can be used to execute P-Code files from the NSH command line 2014-05-09 12:30:07 -06:00
Gregory Nutt a3e2598d90 Move P-Code execution logic from interpreters/prun to system/prun 2014-05-09 11:09:43 -06:00