Program | Status | Notes | Links |
---|---|---|---|
slabtop |
YES | Leak TUI | Issues#31 PR#42 |
top |
YES | Leak TUI | Issues#33 PR#189 |
pgrep |
YES | Issues#26 PR#95 | |
pidof |
YES | Issues#93 PR#112 | |
ps |
YES | Issues#102 PR#133 | |
pidwait |
YES | Issues#28 PR#167 | |
snice |
YES | Issues#30 PR#203 |
Planning the execution plan, part of the program implementation depends on the common code.
During the week, there was just enough time left for me to do this because of my graduation project stuff. But after that I'll have a lot of time to focus on implementing the program :).
I made pgrep
, pidwait
, pidof
, ps
as a group and snice
, skill
as another group of programe implementation, because these program have common code and relative to others.
Prior to this week, I implemented the slabtop command as a way to familiarize myself with the community workflow.
https://github.com/uutils/procps/issues/31
https://github.com/uutils/procps/pull/42
This week aims to implement pgrep
first and split common code for proc program group, I opened a pull request for this action and I continued to improve the initial very rough implementation with my mentors. Thanks to their help, I learned a lot of useful uucore functions and further deepened my understanding of the general logic of the implementation of the uutils family of utilities.
And other things in this week, I’m trying to improve the performance of common code of proc program group codebase. In earlier implementations, pgrep's codebase had poor performance and ran slower than the GNU implementation. After the performance improvement, the codebase much faster than before but it also a bit lower than GNU implementation.
https://github.com/uutils/procps/issues/26
https://github.com/uutils/procps/pull/95
This week's goal was to merge pull requests about pgrep
into the project. With mentors’ sugestion I think there are something can be better such as the logic in uumain of pgrep
and there are some better conceptual model. So I’m working on rework it.
Also, I'm trying to add a cache to PidEntry
to improve performance: since some data is processed too slowly and manipulated too often, adding a cache to it will help to the performance.
This week I’m working on move process.rs
from procps/pgrep/process.rs
to uutils/uucore/process.rs
.