Commit Graph

1096 Commits

Author SHA1 Message Date
hyunghwan.chung
452caae336 enhanced kqueue manipulation with fd tracking 2019-09-25 10:05:39 +00:00
hyunghwan.chung
da2a8a464a updated configure.ac to show FFI_LIBS 2019-09-24 02:13:35 +00:00
hyunghwan.chung
3c8fe60b7e added experimental kqueue support 2019-09-23 08:44:22 +00:00
hyunghwan.chung
d50f4fab99 added kqueue check into configure.ac 2019-09-23 06:48:55 +00:00
hyunghwan.chung
a0a0756b9d changed moo_shallowcopy() to exclude the hash field when copying 2019-09-23 06:42:47 +00:00
hyunghwan.chung
cc9c1a3925 simplified the uncocpyable check in moo_shallowcopy() 2019-09-22 16:26:30 +00:00
hyunghwan.chung
de72bc6b58 added the #uncopyable attribute to the class definition. 2019-09-22 15:59:09 +00:00
hyunghwan.chung
97f264398d changed moo_shallowcopy() to stop copying a process object or an object with trailers 2019-09-20 09:27:24 +00:00
hyunghwan.chung
e0c116ecd4 enhanced object hash handling 2019-09-19 14:10:00 +00:00
hyunghwan.chung
e1e577ec22 touched up user-defined signal handling 2019-09-18 08:24:05 +00:00
hyunghwan.chung
3db6820932 trying to improve hash handling with moving gc 2019-09-17 23:15:20 +00:00
hyunghwan.chung
ee9064bf8f adding the hash flag field to the object to support generic object hash with a moving gc 2019-09-16 14:16:55 +00:00
hyunghwan.chung
a640650b67 trying to implement user-defined signal handling mechanism 2019-09-15 15:41:24 +00:00
hyunghwan.chung
d2f5446ee5 source change for consistency 2019-09-14 02:21:59 +00:00
hyunghwan.chung
c3c5365fcf added LargePointer handling in moo_fmt_object_() 2019-09-10 15:20:21 +00:00
hyunghwan.chung
da1f8cb67b removed _KernelProcess.
added System>>_findProcessById and System>>_findProcessByIdGreater
touched os signal handler in System
2019-09-09 07:43:14 +00:00
hyunghwan.chung
b9199faaf6 loosend restriction imposed by #final. a kernel class can inherit from a final class.
added an experimental class _KernelProcess for process management
2019-09-08 15:25:21 +00:00
hyunghwan.chung
ff99686c97 more process management code 2019-09-07 18:15:20 +00:00
hyunghwan.chung
4d6cd7840a touched up unsafe raw pointer handling routines 2019-09-07 17:48:02 +00:00
hyunghwan.chung
be71f46b40 interim commit while experimenting with segfault recovery 2019-09-07 15:59:02 +00:00
hyunghwan.chung
a827ca7826 added moo_oowtoptr() and moo_ptrtooow() 2019-09-06 03:33:34 +00:00
hyunghwan.chung
92fc8e2098 writing LargePointer support 2019-09-05 15:55:39 +00:00
hyunghwan.chung
dd6186d1f2 experiment with unaligned address in ffi 2019-09-05 08:45:04 +00:00
hyunghwan.chung
00969032ff starting to write support 'const' defintion in a class 2019-09-04 15:06:24 +00:00
hyunghwan.chung
1bd41fc6c0 move a variable declartion to the top of a block 2019-09-03 07:03:42 +00:00
hyunghwan.chung
4254ea0abe implemented sleep interruption, sort of... 2019-09-03 06:33:58 +00:00
hyunghwan.chung
48734c71a7 changed to adjust moo->sem_io_wait_count in pf_semaphore_unsignal() 2019-09-03 03:28:54 +00:00
hyunghwan.chung
d9df6694cf added the halting event callback 2019-09-02 16:23:03 +00:00
hyunghwan.chung
df01b982cb improved moo->sem_io_wait_count management 2019-09-01 14:51:37 +00:00
hyunghwan.chung
4bbbdaab8f changed to decrement sem_io_wait_count before unchaining in terminate_process() 2019-08-31 16:21:40 +00:00
hyunghwan.chung
b96d977234 some experimental code in terminate_process() to handle IO semaphores properly 2019-08-31 10:21:37 +00:00
hyunghwan.chung
f6d7098744 meaningless 2019-08-31 05:17:55 +00:00
hyunghwan.chung
44425c5e60 relocated process information dumping into a separate function, dump_process_info() in exec.c 2019-08-31 03:08:59 +00:00
hyunghwan.chung
10cf217b7b more semaphore debugging 2019-08-30 15:48:39 +00:00
hyunghwan.chung
d9ad1a7804 debugging semaphore handling 2019-08-30 08:42:21 +00:00
hyunghwan.chung
584e7f121e debugging io semaphore handling upon sudden abortion 2019-08-29 15:18:59 +00:00
hyunghwan.chung
652f13246f moved gcfin_should_exit from Processor to System 2019-08-26 14:43:41 +00:00
hyunghwan.chung
87cf4f4b6a changed chain_to_semaphore() to be more fault resistent 2019-08-24 16:03:17 +00:00
hyunghwan.chung
c8e22fbd92 changed to call printf in test-bi 2019-08-24 15:45:08 +00:00
hyunghwan.chung
018a4790d0 fixed typos in mod/ffi.c 2019-08-24 06:20:36 +00:00
hyunghwan.chung
42df4239a6 added ProcessScheduler>>processById:
attempting to correct signal handling behavior
2019-08-18 17:46:40 +00:00
hyunghwan.chung
071ebb7788 fixed comparison bugs in moo_pf_basic_at_test_put()
changed some methods to use basicLastIndex instead of basicSize - 1
2019-08-17 15:56:47 +00:00
hyunghwan.chung
68eb5d8db8 added Apex>>basicLastIndex, Apex>>_basicLastIndex. Apex>>basicFirstIndex, Apex>>_basicFirstIndex 2019-08-17 10:08:25 +00:00
hyunghwan.chung
a65b64a0d9 completed Apex>>basicAt:test:put.
changed BlockContext>>ensure: and Context>>unwindTo:return: to use basicAt:test:put to make the test-and-set operation uninterruptible
2019-08-17 06:30:34 +00:00
hyunghwan.chung
f3953c4754 adding Apex>>basicAt:test:put: 2019-08-17 05:28:25 +00:00
hyunghwan.chung
24f8525db3 fixed a compiler bug in patch_forward_jump_instruction()
enhanced the compiler to disallow 'goto' in an argument expression to jump out.
2019-08-16 16:19:21 +00:00
hyunghwan.chung
f51fbd1a33 added the vm_setsig vm primitive function to improve os signal handler
changed System>>__os_signal_handelr and System>>startup for improved os signal handling
2019-08-16 15:29:36 +00:00
hyunghwan.chung
f23a5bd22c added two new vm primitives - vm_getsigfd and vm_getsig - to support os signal handling more promptly 2019-08-15 15:55:06 +00:00
hyunghwan.chung
3253b8fe0a enhancing VM to handle OS signals properly. work in progress 2019-08-14 16:24:39 +00:00
hyunghwan.chung
62777b97d6 changed a couple of MOO_ASSERT()'s to MOO_STATIC_ASSERT()'s in lib/bigint.c 2019-08-13 07:19:23 +00:00