blob: 8b207f16629edff8e56cba9c28fc172eedb56c15 [file] [log] [blame]
// Copyright 2023 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.process.explorer;
using zx;
type Handle = flexible union {
1: job Job;
2: process Process;
3: thread Thread;
4: vmo Vmo;
5: other OtherHandle;
};
type Job = table {
1: koid zx.Koid;
2: name string:zx.MAX_NAME_LEN;
3: child_jobs vector<zx.Koid>:MAX;
4: child_processes vector<zx.Koid>:MAX;
};
type Process = table {
1: koid zx.Koid;
2: name string:zx.MAX_NAME_LEN;
3: threads vector<zx.Koid>:MAX;
4: start_time uint64;
};
type Thread = table {
1: koid zx.Koid;
2: name string:zx.MAX_NAME_LEN;
3: state uint32;
};
type Vmo = table {
1: koid zx.Koid;
2: name string:zx.MAX_NAME_LEN;
3: size_bytes uint64;
4: parent_koid zx.Koid;
5: num_children uint64;
6: num_mappings uint64;
7: share_count uint64;
8: committed_bytes uint64;
9: handle_rights zx.Rights;
};
type OtherHandle = table {
1: type zx.ObjType;
2: koid zx.Koid;
3: related_koid zx.Koid;
4: peer_owner_koid zx.Koid;
5: handle_rights zx.Rights;
};