Skip to content

loopholelabs/userfaultfd-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

userfaultfd-go

Go bindings to userfaultfd.

License: Apache 2.0 Discord Go Version Go Reference

Overview

userfaultfd-go provides Go bindings to userfaultfd, which allows for handling page faults in a memory region in userspace.

It enables you to...

  • Expose any io.ReaderAt as a Go slice: You can use this feature to work with any io.ReaderAt interface as a Go slice, which can be useful when working with external libraries that can't work with Go buffers or readers.
  • Access remote files as a slice without fetching: With userfaultfd-go, you can access a remote file stored in S3 or a file as a slice without needing to fetch its complete contents locally, which can be beneficial when working with large files.
  • Track changes to mmaped regions: You can track changes made to a mmaped region by one process from another process.

Installation

You can add userfaultfd-go to your Go project by running the following:

$ go get github.com/loopholelabs/userfaultfd/...@latest

Reference

To make getting started with userfaultfd-go easier, take a look at the following examples:

Acknowledgements

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/loopholelabs/userfaultfd-go. For more contribution information check out the contribution guide.

License

The userfaultfd-go project is available as open source under the terms of the Apache License, Version 2.0.

Code of Conduct

Everyone interacting in the userfaultfd-go project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the CNCF Code of Conduct.

Project Managed By:

https://loopholelabs.io