mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 00:57:36 +00:00
Kernel: Convert /proc/PID/vm to JSON.
This commit is contained in:
parent
d4892b3fdc
commit
52a5e34902
1 changed files with 10 additions and 15 deletions
|
@ -222,23 +222,18 @@ ByteBuffer procfs$pid_vm(InodeIdentifier identifier)
|
||||||
if (!handle)
|
if (!handle)
|
||||||
return {};
|
return {};
|
||||||
auto& process = handle->process();
|
auto& process = handle->process();
|
||||||
StringBuilder builder;
|
JsonArray array;
|
||||||
builder.appendf("BEGIN END SIZE COMMIT FLAGS NAME\n");
|
|
||||||
for (auto& region : process.regions()) {
|
for (auto& region : process.regions()) {
|
||||||
StringBuilder flags_builder;
|
JsonObject region_object;
|
||||||
if (region.is_readable())
|
region_object.set("readable", region.is_readable());
|
||||||
flags_builder.append('R');
|
region_object.set("writable", region.is_writable());
|
||||||
if (region.is_writable())
|
region_object.set("address", region.vaddr().get());
|
||||||
flags_builder.append('W');
|
region_object.set("size", region.size());
|
||||||
builder.appendf("%x -- %x %x %x %-4s %s\n",
|
region_object.set("amount_resident", region.amount_resident());
|
||||||
region.vaddr().get(),
|
region_object.set("name", region.name());
|
||||||
region.vaddr().offset(region.size() - 1).get(),
|
array.append(move(region_object));
|
||||||
region.size(),
|
|
||||||
region.amount_resident(),
|
|
||||||
flags_builder.to_string().characters(),
|
|
||||||
region.name().characters());
|
|
||||||
}
|
}
|
||||||
return builder.to_byte_buffer();
|
return array.serialized().to_byte_buffer();
|
||||||
}
|
}
|
||||||
|
|
||||||
ByteBuffer procfs$pci(InodeIdentifier)
|
ByteBuffer procfs$pci(InodeIdentifier)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue