|
|
39b336ca2f
|
wait4(): save exit status only if requested
|
2014-05-12 10:29:58 +09:00 |
|
|
|
e5aad641ac
|
delete old page fault handlers
|
2014-05-07 22:10:21 +09:00 |
|
|
|
71d1359d53
|
merge two page fault functions
fixes #18
|
2014-05-07 21:24:45 +09:00 |
|
|
|
99dec9b805
|
add parameters to arch_vrflag_to_ptattr()
for other architectures and future use
refs #18
|
2014-05-07 21:24:45 +09:00 |
|
|
|
769cf79bf8
|
move vrflag_to_ptattr() to arch/x86/kernel/memory.c
refs #18
|
2014-05-07 21:24:45 +09:00 |
|
|
|
8097b057da
|
add page_is_in_memobj() and page_is_multi_mapped()
These are page test functions.
|
2014-05-07 21:24:45 +09:00 |
|
|
|
7e788f06f7
|
add PTATTR_DIRTY
refs #18
|
2014-05-07 21:24:45 +09:00 |
|
|
|
ce7af5839d
|
keep page.count valid through its life cycle
|
2014-05-07 21:24:45 +09:00 |
|
|
|
29c7d40005
|
use atomic operations for manipulating page.count
|
2014-05-07 21:24:45 +09:00 |
|
|
|
604d1da50f
|
change macro name: PF_DONTCOW --> PF_POPULATE
refs #18
|
2014-04-25 11:19:21 +09:00 |
|
|
|
c15c2a2024
|
fix process refcount so that process structure is still valid when final release() is called in schedule()
|
2014-04-24 17:09:14 +09:00 |
|
|
|
0e348e6295
|
SIGCHLD and wait4(), i.e. wait()/waitpid() implementation
|
2014-04-23 13:33:18 +09:00 |
|
|
|
7103fed1dc
|
rename free_process() ro release_process()
|
2014-04-23 13:31:15 +09:00 |
|
|
|
2a9bd2efb1
|
fix clean-up path in create_process()
|
2014-04-21 19:55:43 +09:00 |
|
|
|
d6c0ea7627
|
assign the same TID and PID to the new process after fork()
|
2014-04-15 20:40:40 +09:00 |
|
|
|
d090e3f28d
|
Merge branch 'master' of postpeta.pccluster.org:mckernel
|
2014-04-13 14:13:46 +09:00 |
|
|
|
40fdb8865b
|
Merge branch 'master' of postpeta.pccluster.org:mckernel
|
2014-04-11 15:41:25 +09:00 |
|
|
|
b93db2411c
|
check CLONE_VM in clone_flags for determining whether clone()/fork() is requested
|
2014-04-11 15:41:17 +09:00 |
|
|
|
39a86fad18
|
support execute disabled stack
|
2014-04-11 14:59:47 +09:00 |
|
|
|
b31a1b6db2
|
add PTATTR_NO_EXECUTE
|
2014-04-11 14:59:47 +09:00 |
|
|
|
7eeafb0d85
|
change parameter types of arch-regs to "void *"
|
2014-04-03 15:33:34 +09:00 |
|
|
|
583c9355cd
|
fix argument of set_tid_address()
|
2014-04-02 18:02:04 +09:00 |
|
|
|
cf442e6a14
|
fork(): preliminary version (no wait()/waitpid() support yet)
|
2014-04-02 14:07:38 +09:00 |
|
|
|
dabca28e4b
|
Merge branch 'master' of postpeta.pccluster.org:mckernel
|
2014-03-30 16:14:43 +09:00 |
|
|
|
e112aa8b06
|
remove DMA call
|
2014-03-30 16:14:19 +09:00 |
|
|
|
ccd770ba24
|
use per-process wait queues for system call request processing in mcexec so that multiple processes can share the per-core system call channels
|
2014-03-27 19:31:42 +09:00 |
|
|
|
a2515747cf
|
print CPU core ID in debug messages
|
2014-03-27 15:32:23 +09:00 |
|
|
|
76089e2682
|
add AT_PAGESZ to auxvec
|
2014-02-26 10:31:44 +09:00 |
|
|
|
dca831b94f
|
add error check codes for madvise()
The advice will be ignored even if this madvise() succeed.
|
2014-02-05 11:31:03 +09:00 |
|
|
|
b2b9b566c8
|
implement munlock()
|
2014-02-05 11:31:01 +09:00 |
|
|
|
f2a6515448
|
implement mlock()
|
2014-02-05 11:30:59 +09:00 |
|
|
|
fcbaa9726c
|
correct the syscall return type
Long size syscall return values such as shmat()'s and lseek()'s are
broken, because lower 32 bits are only returned.
|
2014-02-05 11:30:57 +09:00 |
|
|
|
93c5385f65
|
implement mmap(MAP_LOCKED)
|
2014-01-27 18:59:36 +09:00 |
|
|
|
f0a52d4519
|
implement mmap(MAP_POPULATE)
populate_process_memory() function is not efficient,
because whether every small page is present is checked.
|
2014-01-27 18:50:38 +09:00 |
|
|
|
f5b4057074
|
add vsyscall
- getcpu() is not implemented. It will cause SIGILL.
- gettimeofday() and time() are implemented with syscall.
|
2014-01-24 20:18:36 +09:00 |
|
|
|
26d68d391d
|
signal part 4 (sigsuspend etc)
|
2014-01-24 10:14:49 +09:00 |
|
|
|
c421965542
|
relocate a program interpreter to the map_start
This commit makes a system call that dereferences a NULL pointer fail.
|
2014-01-14 18:55:16 +09:00 |
|
|
|
6992b829a0
|
delegate the open(2) with the generic forwarding.
This commit solves a problem that causes getpwnam()/getpwuid() to return
NULL.
|
2014-01-14 18:50:20 +09:00 |
|
|
|
e86ffb0b57
|
do write back only MAP_SHARED pages
Fix a problem that cause write reference to a MAP_PRIVATE mapping to
change the underlying file.
|
2014-01-14 18:48:43 +09:00 |
|
|
|
8411f353fe
|
signal part 3 (EFAULT)
|
2014-01-13 10:52:29 +09:00 |
|
|
|
0465cc16b9
|
signal (part 2) sigpending
|
2014-01-07 19:52:06 +09:00 |
|
|
|
a8c249ddaf
|
signal (part 1)
|
2014-01-07 11:57:57 +09:00 |
|
|
|
9e00275120
|
fork & execve return EOPNOTSUPP (temporary hack)
|
2013-12-18 16:10:13 +09:00 |
|
|
|
96576aaee7
|
fix general protection fault caused by SIGALARM
|
2013-12-16 13:45:45 +09:00 |
|
|
|
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 |
|
|
|
6bcec77d51
|
Merge branch 'master' of postpeta.pccluster.org:mckernel
|
2013-11-14 17:21:54 +09:00 |
|
|
|
2f63b7ed95
|
futex.h copyright
|
2013-11-14 17:21:47 +09:00 |
|
|
|
cd04de3131
|
cls.c, copy.c, debug.c, listeners.c, mikc.c copyright
|
2013-11-14 17:00:37 +09:00 |
|