Amit Mahajan
86c3a7c176
Added LinuxUpdateParam class for passing parameters to linux
2009-10-21 16:41:28 +05:30
Amit Mahajan
61a0d5b60f
Added support for ATAGS for linux kernel
2009-10-21 16:38:57 +05:30
Amit Mahajan
2625d5e871
Encapsulating Linux Image binary in elf
2009-10-21 16:38:57 +05:30
Bahadir Balban
2caf0478d8
Remove missing parse_options reference
2009-10-21 13:25:25 +03:00
Bahadir Balban
d2fee25924
Simplified/Cleaned up pager initialization in the kernel
2009-10-20 22:20:37 +03:00
Bahadir Balban
224b531de5
min/max definitions converted to inline functions instead of macros
2009-10-20 21:38:15 +03:00
Bahadir Balban
61e41b5fed
Removed memory access permissions from configuration for simplicity
...
Access permission bits are required eventually but currently are
not a critical concern and yet they complicate configuration. For
sake of simplicity they are removed to be added later on when
absolutely needed.
2009-10-20 21:16:04 +03:00
Bahadir Balban
dba6dd0647
Removed parse_options.py which has now moved to configure.py
2009-10-20 20:33:53 +03:00
Bahadir Balban
d94054e2b4
Updated example posix cml files
2009-10-20 20:10:35 +03:00
Bahadir Balban
00bfe36dc9
Added example cml2 configuration with 2 posix containers
2009-10-20 20:06:28 +03:00
Bahadir Balban
f3edb21fb5
Further enhancements to configuration simplification
2009-10-20 20:05:42 +03:00
Bahadir Balban
b85d4202ce
Significant cleanup to how configuration files are generated.
...
Default autogenerated version works. Need to sort out config options
2009-10-20 19:35:02 +03:00
Bahadir Balban
a6ed056ea7
Added example cml2 configuration with 2 posix containers
2009-10-20 13:15:54 +03:00
Bahadir Balban
9c06bea41a
Changed name of kernel_container to kernel_resources
2009-10-20 13:14:49 +03:00
Bahadir Balban
b78859503e
Fixed anomaly on memory initialization on mm0.
...
By this commit, two copies of posix containers can be run!
2009-10-19 22:22:23 +03:00
Bahadir Balban
3660ba9528
Some more minor fixes.
2009-10-19 20:21:23 +03:00
Bahadir Balban
655e135300
Removed zombie test and any verbose printks
2009-10-19 19:45:04 +03:00
Bahadir Balban
62c4249d95
Renamed many thread_* line of calls.
...
Renamed so that task_* gets a ktcb directly, and thread_* line of
calls make the search for the ktcb.
2009-10-19 19:24:40 +03:00
Bahadir Balban
cfa35e4a66
Added support for faulty pagers and their threads to become zombies
...
Added support for pagers that fault to suspend and become zombies
along with all the threads that they manage. Zombie killing is to
be done at a later time, from this special zombie queue.
The implementation works same as a suspension, with the added action
that the thread is moved to a queue in kernel container.
2009-10-19 18:48:55 +03:00
Bahadir Balban
9177166817
Managed to self-destruct pager.
...
Issues:
- A page-faulting thread suspends if receives -1 from pager page fault ipc.
This is fine if pager is about to delete the thread, but it is not if
it is a buggy pager.
- Need to find a way to completely get rid of suspended pager.
- A method of deleting suspended tasks could remedy both cases above.
2009-10-19 00:33:10 +03:00
Bahadir Balban
c3b0399485
Debug commit to be removed
2009-10-18 18:53:31 +03:00
Bahadir Balban
c5d2bedc7f
Remove memcache verbose print
2009-10-18 16:23:53 +03:00
Bahadir Balban
a3a90530df
Fixed a few minor issues.
2009-10-18 16:16:32 +03:00
Bahadir Balban
72af4a843a
Added userptr access check to exchange_registers
2009-10-18 15:05:56 +03:00
Bahadir Balban
2bd3266498
Removed bits from kernel where pager utcb is set.
...
Pagers now set their own utcb explicitly via exchange_registers.
exregs accepts calls from active pagers for this purpose only.
2009-10-18 15:01:38 +03:00
Bahadir Balban
7ba7a2e796
Added a simplified ascii_to_int() implementation.
...
Removed dependency on hard-coded pager id. Pager id is now passed
as an environment string `pagerid' to tasks. Alternatively, this
could take space in the utcb of each task.
2009-10-17 18:48:30 +03:00
Bahadir Balban
d19c5c26fd
Removed hard-coded area definitions from kernel
2009-10-17 13:42:49 +03:00
Bahadir Balban
fc95d95454
Made necessary changes to make test0 link at an adjustable address
2009-10-17 13:24:26 +03:00
Bahadir Balban
6df923c34d
Merge branch 'master' into linux
2009-10-15 21:08:02 +03:00
Bahadir Balban
e28e2f486a
Changed all pager hardcoded value assumptions, too.
...
Not tested.
2009-10-15 20:43:19 +03:00
Bahadir Balban
e9afbbaad9
Replaced all hard-coded values for UTCB, SHM, TASK region assumptions.
...
Not tested.
Not replaced pager run-area values.
2009-10-15 20:35:41 +03:00
Bahadir Balban
6982e96d1f
Some cleanups on last commit
2009-10-15 20:24:01 +03:00
Bahadir Balban
e762f4162c
Merge branch 'master' into master-diverged
2009-10-15 20:15:26 +03:00
Bahadir Balban
bbe81c5d52
Merge branch 'master' into linux
2009-10-15 20:11:46 +03:00
Bahadir Balban
381405ee8e
Incorporated means to specify shared memory, task address space and utcb regions to posix container
2009-10-15 20:10:08 +03:00
Bahadir Balban
b08e27b4bf
Added an example posix cml2 configuration
2009-10-14 22:25:40 +03:00
Bahadir Balban
9d900a9956
Cleanup to execve functions
2009-10-14 15:21:33 +03:00
Bahadir Balban
281116fbc7
Merged read/write cache pages as copy_cache_pages()
2009-10-14 15:01:12 +03:00
Bahadir Balban
3a3204986e
read_cache_pages() also working copied from write_cache_pages()
...
- Need to remove old versions
- Need to merge the two.
- Need to investigate occasional page fault on NMOP sequence. (resembles an error ipc_extended test)
Could be related to new page cache read/write routines.
2009-10-14 01:48:05 +03:00
Bahadir Balban
ee2bf8e7f3
Write cache pages seems to work OK.
2009-10-14 00:36:01 +03:00
Bahadir Balban
0cd5091132
Moved user buffer access functions to user.c
2009-10-13 19:11:14 +03:00
Bahadir Balban
38ac9052c0
Few minor fixes
2009-10-13 13:51:30 +03:00
Bahadir Balban
c37b9030fd
Fixed a bug with returned fd from sys_open
2009-10-13 13:31:22 +03:00
Bahadir Balban
a249105969
Integrated vm_files with vnodes. execve is not working as expected.
2009-10-13 11:33:25 +03:00
Bahadir Balban
f54747a208
All posix tests running as before.
2009-10-10 00:23:13 +03:00
Bahadir Balban
13c7a6476d
Fixed a c library issue with wrong valued SEEK_SET SEEK_CUR ...
2009-10-09 16:53:37 +03:00
Bahadir Balban
d39ffc6acd
Fixed utcb updating issue that was a significant burden.
...
Any thread that touches a utcb inside the kernel now properly checks
whether the utcb is mapped on its owner, and whether the mapped physical
address matches that of the current thread's tables. If not the tables
are updated.
This way, even though page tables become incoherent on utcb address
change situations (such as fork() exit(), execve()) they get updated
as they are referenced.
Since mappings are added only conditionally, caches are flushed only
when an update is necessary.
2009-10-09 16:45:10 +03:00
Bahadir Balban
a8a4b5ce6c
Removed unnecessary print messages from few build scripts
2009-10-09 00:58:07 +03:00
Bahadir Balban
7e38e70f93
Added conditional configuration flag -c to build.py
2009-10-08 19:07:59 +03:00
Bahadir Balban
d888267f58
Fixed the error that dirent structure was not matching userland structure.
2009-10-08 18:37:43 +03:00