mirror of
https://github.com/RGBCube/serenity
synced 2025-07-24 21:47:43 +00:00
Kernel: Expose process executable paths in /proc/all
This commit is contained in:
parent
87492e723b
commit
21ccbc2167
4 changed files with 5 additions and 4 deletions
|
@ -872,6 +872,7 @@ static OwnPtr<KBuffer> procfs$all(InodeIdentifier)
|
||||||
process_object.add("ppid", process.ppid().value());
|
process_object.add("ppid", process.ppid().value());
|
||||||
process_object.add("nfds", process.number_of_open_file_descriptors());
|
process_object.add("nfds", process.number_of_open_file_descriptors());
|
||||||
process_object.add("name", process.name());
|
process_object.add("name", process.name());
|
||||||
|
process_object.add("executable", process.executable() ? process.executable()->absolute_path() : "");
|
||||||
process_object.add("tty", process.tty() ? process.tty()->tty_name() : "notty");
|
process_object.add("tty", process.tty() ? process.tty()->tty_name() : "notty");
|
||||||
process_object.add("amount_virtual", process.amount_virtual());
|
process_object.add("amount_virtual", process.amount_virtual());
|
||||||
process_object.add("amount_resident", process.amount_resident());
|
process_object.add("amount_resident", process.amount_resident());
|
||||||
|
|
|
@ -391,10 +391,8 @@ public:
|
||||||
u32 m_ticks_in_kernel_for_dead_children { 0 };
|
u32 m_ticks_in_kernel_for_dead_children { 0 };
|
||||||
|
|
||||||
Custody& current_directory();
|
Custody& current_directory();
|
||||||
Custody* executable()
|
Custody* executable() { return m_executable.ptr(); }
|
||||||
{
|
const Custody* executable() const { return m_executable.ptr(); }
|
||||||
return m_executable.ptr();
|
|
||||||
}
|
|
||||||
|
|
||||||
int number_of_open_file_descriptors() const;
|
int number_of_open_file_descriptors() const;
|
||||||
int max_open_file_descriptors() const
|
int max_open_file_descriptors() const
|
||||||
|
|
|
@ -64,6 +64,7 @@ HashMap<pid_t, Core::ProcessStatistics> ProcessStatisticsReader::get_all()
|
||||||
process.ppid = process_object.get("ppid").to_u32();
|
process.ppid = process_object.get("ppid").to_u32();
|
||||||
process.nfds = process_object.get("nfds").to_u32();
|
process.nfds = process_object.get("nfds").to_u32();
|
||||||
process.name = process_object.get("name").to_string();
|
process.name = process_object.get("name").to_string();
|
||||||
|
process.executable = process_object.get("executable").to_string();
|
||||||
process.tty = process_object.get("tty").to_string();
|
process.tty = process_object.get("tty").to_string();
|
||||||
process.pledge = process_object.get("pledge").to_string();
|
process.pledge = process_object.get("pledge").to_string();
|
||||||
process.veil = process_object.get("veil").to_string();
|
process.veil = process_object.get("veil").to_string();
|
||||||
|
|
|
@ -66,6 +66,7 @@ struct ProcessStatistics {
|
||||||
pid_t ppid;
|
pid_t ppid;
|
||||||
unsigned nfds;
|
unsigned nfds;
|
||||||
String name;
|
String name;
|
||||||
|
String executable;
|
||||||
String tty;
|
String tty;
|
||||||
String pledge;
|
String pledge;
|
||||||
String veil;
|
String veil;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue