#
9bd8d1d5 |
|
03-Apr-2019 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
b3813360 |
|
27-Nov-2014 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
moved spawn flags into spawndomain.h
|
#
e550c664 |
|
31-Aug-2014 |
Reto Achermann <acreto@student.ethz.ch> |
libspawndomain: added functions for symbol parsing and registring/querying/caching
|
#
b9af8f7e |
|
28-Aug-2014 |
Reto Achermann <acreto@student.ethz.ch> |
spawn: added handling of spawn flags Added a spawnflags parameter to the command line and forwarding of spawnflags to spawnd Added a spawn flag SPAWN_FLAGS_OMP for parsing openMP functions.
|
#
a51cf0a8 |
|
13-Aug-2014 |
Reto Achermann <acreto@student.ethz.ch> |
libcxx: exception handling added missing code to enable exception handling of C++ programs on barrelfish: + adding .eh_frame and .eh_frame_hdr section information to the dispatcher when the new domain is spawned. + adding two new functions to obtain the eh_frame and eh_frame_hdr information from userspace (used by libcxx for exception handling)
|
#
de906f69 |
|
28-Feb-2014 |
Simon Peter <simpeter@cs.washington.edu> |
The Arrakis backport to Barrelfish. Here are the macro changes: * Made lwIP an optional network stack * Moved lwIP headers out of the general include directory * Parallel hake * CPU-virtualized ("arrakis") applications * libarrakis is a new libOS that uses CPU features directly * arrakismon is a new monitor for Arrakis apps * QEMU Multiboot support instead of GRUB (enables KVM) * e10k virtual function driver * Software virtual->physical mapping (substitutes IOMMU) * To be replaced soon with an Intel IOMMU driver * Better GDB and stack tracing support * New POSIX support * pthreads, inet_*(), usleep(), syslimits.h, sigaction(), mman.h, * resource.h, sendmsg(), recvmsg(), mkfifo(), syslog.h, sysexits.h, * fcntl(), getegid(), getgid(), pipe(), rlimits * epoll support * Separate waitset for interrupts * Thread TLS key and ID support * Moved PCRE headers to include/, where they usually are * Intel performance counters support * Handle boot-time RAM overflow (for machines with >=64GB RAM) * Arranet network stack * Fix for build of lib/barrelfish/arch/x86_64/dispatch.c without -O2 * New comandline options to pci daemon: * maxvfs=x, x is number of virtual functions to create for each * device supporting it * skb_bridge_program=x, x is SKB bridge programming script to use * bridge_bios is a script that uses the BIOS pre-set values, like Linux * Correctly build machine-optimized newlib parts * Library versions of e1000 and e10k drivers * Support for virtualization in e10k driver * e10k datacenter control plane daemon * Modified hellotest to be both a Barrelfish and an Arrakis application I've decided not to include the lwIP 1.4.1 code, as the port is not finished and who wants to use lwIP anyway with the Arrakis network stack and mTCP being released soon. If you want this, let me know (it's hugely superior to lwIP 1.3.1). I've made the code backwards-compatible with Barrelfish. The default should do what Barrelfish does. One can specify commandline options to the PCI daemon and e10k driver to configure I/O virtualization and the optional arrakismon allows loading CPU-virtualized "arrakis" programs. There are more pending changes, such as support for hardware rate limiting and weighted round robin packet scheduling, but I'd like these to go in first, before I push the rest.
|
#
436c7809 |
|
08-Feb-2013 |
Zaheer Chothia <zchothia@student.ethz.ch> |
headers: wrap declarations in extern "C". Note: this change is not exhaustive and only touches some headers in //include
|
#
54e7593f |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
Barrelfish (standard config) boots with 1 mapping per cap copy.
|
#
ed27dfea |
|
22-Jun-2012 |
Raphael Fuchs <raphaelfuchs@student.ethz.ch> |
Adding functionality to inherit capabilities and pass capabilities as arguments. The function 'spawn_domain_with_fdcap' was used to spawn a domain and inherit the file descriptors of the current domain. A similar inheritance mechanism is needed for session capabilities. To this end, the function was renamed to 'spawn_domain_with_caps'. It no longer expects an fdcap as one of the arguments but a CNode containing all the capabilities, that should be inherited by the newly spawned domain. The layout of this CNode is convention an defined in include/barrelfish/spawn_client.h. Spawnd knows about these capabilities and copies them to the appropriate places. For example, if the fdcap is present in the inherit CNode, spawnd copies it to the corresponding slot in the task CNode. Moreover, we need the ability to pass arbitrary capabilities to a domain at startup for example to start a device driver. Spawnd does not have to know about these capabilities. Which capabilities are passed in which order is an agreement between spawner and spawnee. To this end, this patch adds another CNode argument to the function 'spawn_domain_with_caps'. If a domain wants to pass certain capabilites to another domain it therefore creates a CNode and places the capabilities in this Cnode and the passes this CNode as an argument to 'spawn_domain_with_caps'. Spawnd makes this CNode available to the spawnee in the ARGCN slot of the root CNode as either a CNode (if spawner and spawnee are on the same core) or a ForeignCNode (if on different cores). The first method of inheriting capabilities and the second method of passing capabilities are intentionally kept as two arguments because of the following reasons: * To account for the difference in their handling. Spawnd knows about the inherited capabilities and places each of them to appropriate places in the spawnee's CSpace. As a result they are available early-on, i.e. before the library initialization code for this domain runs. * Putting both kinds of capabilities in a single flat CNode, would require recompilation of the whole OS after adding a new capability, that should be inherited.
|
#
58f2f148 |
|
04-Jun-2012 |
Samuel Hitz <samuel.hitz@gmail.com> |
added comments for alignment workaround, added another gem5 patch, updated arm gem5 README
|
#
9f033120 |
|
04-Jun-2012 |
Samuel Hitz <samuel.hitz@gmail.com> |
added comments to alignment workaround, updated arm gem5 README, included another patch for gem5
|
#
cfa95a61 |
|
21-May-2012 |
Samuel Hitz <samuel.hitz@gmail.com> |
added alignment to struct spawndomain and struct slot_prealloc, introduced 'timeslice' argument for ARM
|
#
e6b486aa |
|
22-May-2012 |
Samuel Hitz <samuel.hitz@gmail.com> |
kernel and userspace now working, removed some debug printfs, general code cleanup
|
#
559955b4 |
|
02-Aug-2011 |
Simon Peter <speter@inf.ethz.ch> |
Merge from ASPLOS tree.
|
#
9299dcef |
|
08-Jul-2011 |
Stefan Kästle <stefan.kaestle@inf.ethz.ch> |
Initial version of public stable barrelfish repository.
|