0551fb26dd
affinity.h, waitq.h copyright
2013-11-14 17:40:59 +09:00
506caa7e7f
page.h, process.h, rlimit.h, syscall.h, time.h, timer.h copyright
2013-11-14 17:34:30 +09:00
821396be7b
amemcpy.c, cls.h, init.h, kmalloc.h, kmsg.hcopoyright
2013-11-14 17:30:43 +09:00
2f63b7ed95
futex.h copyright
2013-11-14 17:21:47 +09:00
03521e9c2c
add copyrights
2013-11-14 16:49:40 +09:00
dcea4fefb3
ap.c, futex.c, jhash.h, timer.c, waitq.c copyrights
2013-11-14 16:20:08 +09:00
334fe81cdb
remove rbtree
2013-11-14 13:07:00 +09:00
bbbc6e1570
add shared mapped file (in progress)
...
implemented:
- Pages can be shared between maps.
- A change made to a map is written to the file, at munmap().
not yet implemented:
- VM operation during page IO execution.
Because page IO is executed with VM's lock.
- Page IO, which does not change a file size with any case.
When munmap() races with truncate(), the file size may be changed
illegally.
2013-11-11 18:18:33 +09:00
bdc02bb687
refuse the write to a read-only memory
...
It was able to change a read-only memory using a system call that
forwarded to host.
To fix this, when read-only mmap(), it places read-only vm_area in the
mcexec's space.
2013-11-06 16:06:58 +09:00
d557ba84d6
exclude interpreter's segment from data region
...
When an interpreter is located on the lower address (e.g. 0x0),
the text region is included in data region.
A fix to avoid this.
2013-10-30 14:28:32 +09:00
27172ad413
support private mapped file
2013-10-15 12:30:41 +09:00
4fb6620f3a
sys_getrlimit: modified to return mcexec's RLIMIT_STACK
2013-10-11 22:36:16 +09:00
413fe7b54a
mcexec: add a interpreter invocation
...
When start a program which have a PT_INTERP segment
(dynamic linkaged program have a PT_INTERP segment),
start the interpreter indicated by the PT_INTERP segment.
2013-10-11 22:23:22 +09:00
a171da1015
add a AT_ENTRY entry to the auxiliary vector
2013-10-11 22:23:22 +09:00
040fb64b22
add terminate thread
2013-09-02 00:39:22 +09:00
1d69225532
mcexec forward signal to MIC process.
2013-08-19 12:17:23 +09:00
591f398768
add page fault forwarding
2013-08-08 12:43:15 +09:00
480f6d4c2f
rewrite page_fault_handler()
2013-08-08 12:43:00 +09:00
78d9d3fcd2
Revert "trial implementation of private file mapping"
...
This reverts commit abe57218c4 .
2013-07-26 16:44:39 +09:00
abe57218c4
trial implementation of private file mapping
...
for review only. will soon be reverted.
2013-07-26 14:40:12 +09:00
deb9cd4e75
implement sys_munmap()
2013-07-18 09:25:58 +09:00
334662b7fe
implement sys_mprotect()
2013-07-18 09:25:58 +09:00
3749696d3e
simple signal handler and kill(2) support.
2013-07-18 08:53:28 +09:00
2aa5194958
rewrite sys_mmap() as sys_new_mmap()
2013-07-10 13:11:19 +09:00
dae884d572
add syscall number constants in syscall.h
2013-07-10 13:11:19 +09:00
4214441ac3
Make clone system-call create a new thread on the next available physical core
...
and skip the physical core with a system process so that
programs using Intel OpenMP bind threads to cores in that manner.
2013-07-05 18:55:03 +09:00
b59be07e9a
implementing demand paging to make it possible to run Intel OpenMP programs
2013-07-04 15:41:12 +09:00
cbc37b62a9
return syscall_table[] to the arch-independent part
2013-07-01 12:44:12 +09:00
4695b332e2
move syscall_table[] to the architecture-depended part
2013-06-19 16:52:46 +09:00
8436f5a5ac
add remove_process_memory_range()
2013-06-12 11:49:19 +09:00
d8034eeb13
propagate error code for prepare image
2013-06-05 17:38:23 +09:00
40ad744947
remove unused function add_process_large_range from source file
2013-06-02 19:38:29 +09:00
4a27a65cb0
resolved merge conflicts with futex code
2013-06-02 16:42:08 +09:00
54798253c5
add error handling for prepare_process
2013-06-02 13:49:10 +09:00
da3965be11
Merge branch 'master' of postpeta.pccluster.org:mckernel
...
Conflicts:
kernel/host.c
kernel/process.c
lib/include/ihk/mm.h
2013-05-28 12:49:13 +09:00
bb4caccf98
add memory allocation check
2013-05-28 12:06:41 +09:00
fa1be382c7
release the resources of the process at exit(2)/exit_group(2).
2013-05-28 11:31:23 +09:00
83db56a040
futex adaptation from Linux 2.6.34 (Intel MPSS Linux)
2013-05-10 14:23:14 +09:00
e09160cce7
add generic system call forwarding
2013-04-17 20:32:33 +09:00
b6e21f2dab
add rbtree source
2013-01-16 16:13:17 +09:00
9818e199f6
support builtin-x86 and builtin-mic
2013-01-06 15:45:17 +09:00
4693789608
change function names
2012-12-17 16:15:05 +09:00
0a808057eb
modify include lines and Makefiles
2012-12-17 16:10:56 +09:00
092069fd80
spin-wait based kernel timer (for futex() timeout) implementation
2012-11-28 15:22:53 +09:00
b79d20d7bf
modification for no_cache: extend_process_region(...,flag)
2012-11-27 16:38:05 +09:00
31098d3d75
add nocache for mmap. usage: void *va = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_ANONYMOUS | 0x40, -1, 0);
2012-11-27 14:56:40 +09:00
a21fe11b00
use large page PTEs for allocations bigger than large page size, enforce alignment (USE_LARGE_PAGES)
2012-11-26 17:00:53 +09:00
337fe4b20d
timer sleep and wakeup functions by Balazs-san
2012-11-26 16:23:01 +09:00
a1490da112
Revert "make munmap free physical pages, and one correction for aligned mmap in syscall.c (extend_process_region is called with memory-region start-address which is aligned (map_end_aligned), instead of tail-address of current-region (region->map_end)) for aligned mmap (in syscall.c)"
...
This reverts commit e7317cca98 .
2012-11-26 13:38:07 +09:00
e7317cca98
make munmap free physical pages, and one correction for aligned mmap in syscall.c (extend_process_region is called with memory-region start-address which is aligned (map_end_aligned), instead of tail-address of current-region (region->map_end)) for aligned mmap (in syscall.c)
2012-10-30 21:32:49 +09:00