Comments (1)
This can work as follows:
- Attach a "policy group" to each thread. The policy group should determine whether threads can still allocate when the system is near its physical memory limit. That way, servers are protected from resource exhaustion while allocations by normal programs can fail (their allocations are "failable").
- Once the physical memory usage exceeds some high watermark, let failable allocations fail. In particular, allocations that are on-demand should result in
SIGBUS
while non-on-demand allocations should fail inhelAllocateMemory
. - Optionally: add a
Failable
flag tohelAllocateMemory
such that servers can still perform failable memory allocations.
from managarm.
Related Issues (20)
- posix: abort does not kill the whole thread group HOT 3
- posix: Unhandled page fault on invoking node.js HOT 1
- Managarm fails to boot if the boot framebuffer is too big
- netserver: Crash on website load in WebKitGTK HOT 2
- Unhandled page fault when running the MiniBrowser HOT 1
- Kernel panic while running abiword HOT 1
- VMware unsupported: vmdk producing errors when running #1
- VMware unsupported: vmdk producing errors when running #2
- thor: I/O APIC IRQs don't start off masked HOT 5
- thor: kernel panic when running terminal application on master HOT 3
- Unhandled page fault while running chromium HOT 1
- SteelSeries Rival 3 mouse causes an assertion failure in usb-hid HOT 1
- XHCI MSIs are broken on Intel Panther Point chipset HOT 3
- Add parsing of kernel and init arguments for debugging and changing functionality HOT 1
- Issue when booting via qemu HOT 7
- is there a plan to support linux device drivers as well HOT 2
- protocols/posix: uses reserved namespace HOT 1
- Define a clang-format file HOT 6
- Kernel assertion related to memory while running chromium
- Different kernel assertion related to memory while running chromium HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from managarm.