Tate, Hongliang Tian
2b556f8de9
Refactor the CPU scheduling subsystem
...
This commits improves both readability and correctness of the scheduling-related
system calls. In terms of readability, it extracts all scheduling-related code
ouf of the process/ directory and put it in a sched/ directory. In terms
of correctness, the new scheduling subsystem introduces CpuSet and SchedAgent
types to maintain and manipulate CPU scheduler settings in a secure and robust way.
2020-04-15 09:43:38 +00:00
Tate, Hongliang Tian
66dec604e4
Update the version number to 0.10.0
2020-03-09 04:17:48 +00:00
Tate, Hongliang Tian
e96892d348
Update version number to 0.9.0
2020-01-23 10:04:38 +00:00
LI Qing
488ec48fe7
Upgrade Rust SGX SDK and its deps to the latest
...
1. Upgrade Rust SGX SDK to v1.1.0
2. Upgrade Intel SGX SDK to v2.7.1
3. Upgrade Rust to nightly-2019-11-25
2020-01-23 04:40:54 +00:00
Tate, Hongliang Tian
a84803e951
Refactor Occlum PAL as a shared library
...
By providing Occlum PAL as a shared library, it is now possible to embed and
use Occlum in an user-controled process (instead of an Occlum-controlled one).
The APIs of Occlum PAL can be found in `src/pal/include/occlum_pal_api.h`. The
Occlum PAL library, namely `libocclum-pal.so`, can be found in `.occlum/build/lib`.
To use the library, check out the source code of `occlum-run` (under
`src/run`), which can be seen as a sample code for using the Occlum PAL
library.
2020-01-23 04:40:54 +00:00
Tate, Hongliang Tian
fe926ed8b3
Update version to 0.8.0
2019-12-13 12:36:01 +00:00
Tate, Hongliang Tian
3c1378b7eb
Add ioctls on /dev/sgx for SGX remote attestation
...
1. Add ioctl command `SGXIOC_GET_EPID_GROUP_ID` for /dev/sgx
2. Add ioctl command `SGXIOC_GEN_QUOTE` for /dev/sgx
3. Add test cases
2019-12-07 10:21:01 +00:00
Tate, Hongliang Tian
814ea21997
Update README for version 0.7.0
2019-11-30 13:41:42 +00:00
Tate, Hongliang Tian
f9376ec4ba
Polish the demos
...
1. Rename demo/ to demos/
2. Add demos/README.md
2019-10-19 02:04:13 +00:00
Tate, Hongliang Tian
1a365de08f
Introduce the new error handling mechanism
...
* Fast error diagnosing (e.g., backtrace and code location)
* First-class POSIX errno (e.g., every error has an errno)
* Zero-overhead abstraction (e.g., no heap allocation for simple errors)
* Ergonomic grammar (e.g., providing convenient macros)
2019-10-14 03:50:20 +00:00
Tate, Hongliang Tian
76f91a1aa3
Add Occlum.json. No more configs hardcoded in code
...
1. Add Occlum.json as Occlum's config file
2. Add tools/bin/build_enclave
3. Add tools/bin/protect_integrity
4. Validate Occlum.json.protected on LibOS startup
5. Parse Occlum.json.protected on LibOS startup
6. Config enclave size using Occlum.json
7. Config process memory sizes using Occlum.json
2019-08-09 09:19:51 +00:00
Wang Runji
29278db8f4
support multiple fs
...
- use RamFS as rootfs, mount SEFS at /test
- for testing convenience, set default cwd to /test
- fix spawn path and change_cwd
2019-07-19 03:49:18 +00:00
Tate, Hongliang Tian
56c69b5f3c
Refactor mmap implementation
...
1. Add a full test suite for mmap
2. Implement file-backed memory mapping
3. Implement fixed, anonymous memory mapping
4. Implement hinted, anonymous memory mapping
5. Implement munmap that covers partial/multiple memory mappings
2019-07-01 11:56:04 +08:00
WangRunji
413586f729
add integrity_only_opt and sgx_file_cache feature
2019-04-26 22:48:00 +08:00
WangRunji
76f9ff380b
add timing for syscall
2019-04-22 17:42:20 +08:00
WangRunji
4e8801850d
update SEFS crate, move sgx_impl to libos
2019-03-29 14:20:25 +08:00
WangRunji
a3c49c2a3e
use crate bitflags
2019-03-29 14:20:25 +08:00
WangRunji
557eb7dc60
fix sys_open. import crate log.
2019-03-29 14:20:25 +08:00
WangRunji
0105756897
add fs submodule. import fs crate to libos
2019-03-29 14:20:25 +08:00
Tate, Hongliang Tian
2b4c8255c6
Improve the build system
2019-02-16 16:24:08 +08:00
Tate, Hongliang Tian
cf77c3a9a8
Init program stack to pass argc, argv, etc.
2019-02-16 16:23:30 +08:00
Tate, Hongliang Tian
757d3f2f4d
Use my forked xmas-elf as a submodule
2019-02-16 16:23:30 +08:00
Tate, Hongliang Tian
7671dbf470
Load and run a Hello World program
2019-02-16 16:23:30 +08:00
Tate, Hongliang Tian
264ac7f993
Add write syscall and prints Hello World
2018-07-01 15:57:41 +08:00