use factory method design pattern instead of `init`'ing "modules" directly
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 30/100
- Tipo de issue
- Refactorización
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- operating-systems
Línea de trabajo
Comienza revisando los puntos actuales de inicialización de módulos y, después, lee la discusión sobre las condiciones de inicialización en PR #1970 y la discusión relacionada con el logging en PR #1974. Aclara la interfaz propuesta de carga y descarga, la nomenclatura de los módulos y el comportamiento de las macros antes de la implementación; se considera terminado cuando la estructura de carga de módulos y su alcance estén acordados y definidos de forma coherente.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
- by running
initdirectly, we may increase churn and certain inconsistencies in the source (see below) - we could initialize modules by having something like a
load_modulefunction that takes a name and a "function pointer" for "loading" and "unloading"
pros:
- we would avoid inconsistencies in where the conditions for the initialization of a module take place (https://github.com/hermit-os/kernel/pull/1970)
- we could give modules a "name" and modify the macros used so that logs/kernel messages use said name, achieving a more "linux-like dmesg"-type of structure (https://github.com/hermit-os/kernel/pull/1974)
- i.e. custom macros, similarly to
pr_debugorpr_infoin the linux kernel
- i.e. custom macros, similarly to
- we could standardize "loading" and "unloading" modules similarly to the linux kernel
- an "enforced structure" wouldn't necessarily compromise flexibility, as we already do things like this anyway.
- Lenguaje dominante
- Rust
- Estrellas
- 1.5k
- Forks
- 133
- Merge medio
- 1 d 17 h
- PR fusionados (30 d)
- 7
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de hermit-os/kernel
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
hermit-os/kernel#2747 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 55/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 52/100
Los mantenedores suelen responder en 1 día
-
static 10% reserve of heap memory for device & stack is inefficient and causes issues.Posiblemente ocupada @jounathaen la tomó hace 13 días. Abierto
hermit-os/kernel#2740 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de hermit-os/kernel
Issues similares
-
checkpoint/verify/rebuild_indexes on a thread holding a WriteTransaction deadlock instead of INT-001Abiertobug known-issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
project-minigraf/minigraf#734 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Los mantenedores suelen responder en 4 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
bitcoindevkit/electrum_streaming_client#57 ·
Los mantenedores suelen responder en 2 días