summaryrefslogtreecommitdiff
path: root/share/man/man9
diff options
context:
space:
mode:
Diffstat (limited to 'share/man/man9')
-rw-r--r--share/man/man9/arch.918
-rw-r--r--share/man/man9/pmap.913
2 files changed, 25 insertions, 6 deletions
diff --git a/share/man/man9/arch.9 b/share/man/man9/arch.9
index adbc437..5bcac2d 100644
--- a/share/man/man9/arch.9
+++ b/share/man/man9/arch.9
@@ -24,7 +24,7 @@
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
-.Dd Jan 12 2024
+.Dd Mar 13 2024
.Dt ARCH 9
.Os Hyra
.Sh NAME
@@ -113,5 +113,21 @@ header, should be a struct containing information
about the address space. This header MUST be implemented
or compiler errors will occur.
+There also exists a
+.Ft pcb
+(Process Control Block) structure in the
+.Ft machine/pcb.h
+header which contains arch specific information per thread.
+
+This structure must be implemented per arch, this structure shall be set up
+by the machdep subsystem, specifically in the
+.Ft processor_init_pcb()
+routine.
+
+The
+.Ft processor_free_pcb()
+routine shall also be implemented per arch to deallocate
+resources when the thread is killed.
+
.Sh AUTHORS
.An Ian Moffett Aq Mt ian@osmora.org
diff --git a/share/man/man9/pmap.9 b/share/man/man9/pmap.9
index 9e4d5e0..e50a8ab 100644
--- a/share/man/man9/pmap.9
+++ b/share/man/man9/pmap.9
@@ -24,7 +24,7 @@
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
-.Dd Jan 12 2024
+.Dd Mar 13 2024
.Dt PMAP 9
.Os Hyra
.Sh NAME
@@ -32,8 +32,11 @@
.Sh SYNOPSIS
.In vm/pmap.h
-.Ft pmap_map(struct vm_ctx *, vaddr_t, paddr_t, vm_prot_t);
-.Ft pmap_unmap(struct vm_ctx *, vaddr_t);
+.Bd -literal
+int pmap_map(struct vm_ctx *, vaddr_t, paddr_t, vm_prot_t);
+int pmap_unmap(struct vm_ctx *, vaddr_t);
+.Ed
+
.Sh DESCRIPTION
The machine dependent virtual memory layer contains a standard set of
functions that shall be implemented per architecture and left alone
@@ -48,13 +51,13 @@ vm_prot_t is used to give a mapping certain access
rules. These rules are described below:
The
-.Ft PMAP_WRITABLE
+.Ft PROT_WRITABLE
bit tells pmap_map() to allow writes to the page.
Writes to pages without this bit will result in an exception,
on AMD64 a #PF will occur.
The
-.Ft PMAP_EXEC
+.Ft PROT_EXEC
bit tells pmap_map() to allow this page to be
executable. On platforms like AMD64, execution of pages
without this bit will result in an exception from the