gwsystems / composite

A component-based OS
composite.seas.gwu.edu
185 stars 70 forks source link

x86-64 PCID and PMU Support #446

Open evanstella opened 2 years ago

evanstella commented 2 years ago

Summary of this Pull Request (PR)

This PR is for an initial review of PCID support. This is not ready to be pulled but will need to be integrated with the namespace implementation that is being developed right now.

This PR adds support for PCID, a kernel API for using PCID for an ASID implementation, as well as PMU programming support for Intel's hardware PMU.

Particularly, I'd like your opinion on:

Intent for your PR

Choose one (Mandatory):

Reviewers (Mandatory):

@gparmer

Code Quality

As part of this pull request, I've considered the following:

Style:

Code Craftsmanship:

Testing

I've tested the code using the following test programs (provide list here):

gparmer commented 2 years ago

You do need to add logic into pgtbl_deactivate to remove the asid from the per-cpu table. We need to discuss this as we might be deactivating on a different core than that on which the component executed.