rellermeyer / course_os

CS 439 course OS
BSD 3-Clause "New" or "Revised" License
38 stars 26 forks source link

Allocator merge #84

Closed ValentijnvdBeek closed 3 years ago

ValentijnvdBeek commented 3 years ago

Merges the old allocator merge request from @laura-pircalaboiu that was filed last year with some changes to ensure that it will work with the changes made to the kernel in the past year. Refer back to #57 for details on that code.

Changes made specific to this branch:

There is one major issue with this code, mainly that it seems to be in part or wholly taken from the following Github page which does not have any license. Unlicensed code is by definition proprietary, although arguably there is an implicit understanding by posting to Github, and hence, it is unusable for the course_os project unless we get written agreement from the original developer. Personally, I would highly recommend adding an issue to re-implement it for next year's edition of the course.

This is why I have also tagged @rellermeyer to get his feedback on this.

ValentijnvdBeek commented 3 years ago

Another recommendation from my side, but that is more of a conversation on the sustainability of the course_os project, is to add a contribution guide with what behaviour is allowed (like reusing parts of permissively licensed code, when that goes to far, and not to use proprietary or copyleft code) and where to find resources to learn about the concepts.

Similarly, although for removed from the original subject, would be to do as I have done here and inventorise what needs to be done in issues with pointers on how to get started or learn about it. The kernel is becoming slowly more complex and, in my belief, it will slowly turn into something where you first need to follow the course for in order to understand what is still to be done. By doing the work writing down before the project starts can decrease startup issues for future groups.