Skip to content

0.3.0 --- openkal 0.21: an image's instructions and read-only data mapped from its file; a relocation refused outside the writable segments - #17

Merged
Sunrisepeak merged 1 commit into
mainfrom
openkal-0.21
Nov 2, 2026
Merged

Sunrisepeak merged 1 commit into
mainfrom
openkal-0.21

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

openkal-image 0.3.0 (openkal-ld, openkal-run, openkal-tools, openkal-bind), for openkal 0.21.

  • okld_host::map: the loader makes each segment no relocation writes a part of the image's file (kal_exec_map_part) rather than a copy; okrun answers for the file run, a library's file, a file read for an image another needs, and an image stored aligned in an okb. A language server's worker made 1 200 page faults starting where it made 16 000.
  • Each relocation (RELA, JMPREL, RELR) must write a writable segment, or the image is refused (SPEC 12.2).
  • openkal 0.21.0, openkal-linux 0.22.0, openkal-macos 0.19.0, openkal-windows 0.17.0.

Co-authored-by: speak-agent 248744407+speak-agent@users.noreply.github.com

…pped from its file; a relocation refused outside the writable segments

okld_host gains `map`: the loader asks the host to make each segment no
relocation writes a part of the file the image was read from
(kal_exec_map_part) and copies it where the host declines --- bytes a program
carries, an implementation without KAL_EXEC_PROP_FILE. okrun keeps the file it
mapped open while it holds the bytes and answers for the file run, a library's
file and a file read for an image another needs; an image stored aligned in an
okb is mapped as well. A language server's worker made 1 200 page faults
starting where it made 16 000, and its cold build of 176 modules was ready in
1.05 times the native time instead of 1.63.

Each relocation (RELA, JMPREL, RELR) must write a writable segment, or the
image is refused: a segment that is not writable may be the file's own pages.
Instructions are made coherent for the copied executable segments only.

openkal 0.21.0, openkal-linux 0.22.0, openkal-macos 0.19.0, openkal-windows
0.17.0.

Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
@Sunrisepeak
Sunrisepeak merged commit 8a5e0aa into main Nov 2, 2026
5 checks passed
@Sunrisepeak
Sunrisepeak deleted the openkal-0.21 branch November 2, 2026 04:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant