emaculation / emaculation/macemu

Document kernel settings to run SheepShaver in Linux somewhere obvious

Open
#135 15 comments 1 reaction 0 assignees View on GitHub
docs SheepShaver
Dominant language
C++
Stars
78
Forks
13
PR merge metrics
No merged PRs in 30d

Description

To run SheepShaver in Linux, one that was made with the default `configure` addressing setting, requires changing the kernel setting `vm.mmap_min_addr` to 0.

Otherwise you get an error like:
`$ SheepShaver`
`Cannot map Low Memory Globals: Operation not permitted.`

It would be nice if this was documented somewhere obvious like the readme.

You can set the setting by echoing 0 to `/proc/sys/vm/mmap_min_addr` as root, or doing

`sudo sysctl -w vm.mmap_min_addr=0`

and you can make it happen automatically at startup by putting

`vm.mmap_min_addr = 0`

into `/etc/sysctl.d/whatever.conf`

**Edit:**
The kernel null deref protection afforded by mmap minimum address enforcement has defense in depth value. If we can make some working build other than a real addressing build be the default `configure` option, great.

This issue is just a practical matter: while real addressing is still the default `configure` option, without instructions, users encounter the error message and show up in the issue tracker for support.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.