| ... | ... | @@ -64,7 +64,6 @@ pub extern "c" fn getpid() pid_t; |
| 64 | 64 | |
| 65 | 65 | pub extern "c" fn kinfo_getfile(pid: pid_t, cntp: *c_int) ?[*]kinfo_file; |
| 66 | 66 | pub extern "c" fn kinfo_getvmmap(pid: pid_t, cntp: *c_int) ?[*]kinfo_vmentry; |
| 67 | | pub extern "c" fn kinfo_getproc(pid: pid_t) ?[*]kinfo_proc; |
| 68 | 67 | |
| 69 | 68 | pub extern "c" fn cpuset_getaffinity(level: cpulevel_t, which: cpuwhich_t, id: id_t, setsize: usize, mask: *cpuset_t) c_int; |
| 70 | 69 | pub extern "c" fn cpuset_setaffinity(level: cpulevel_t, which: cpuwhich_t, id: id_t, setsize: usize, mask: *const cpuset_t) c_int; |
| ... | ... | @@ -677,191 +676,6 @@ comptime { |
| 677 | 676 | std.debug.assert(@sizeOf(kinfo_vmentry) == KINFO_VMENTRY_SIZE); |
| 678 | 677 | } |
| 679 | 678 | |
| 680 | | pub const WMESGLEN = 8; |
| 681 | | pub const LOCKNAMELEN = 8; |
| 682 | | pub const TDNAMLEN = 16; |
| 683 | | pub const COMMLEN = 19; |
| 684 | | pub const MAXCOMLEN = 19; |
| 685 | | pub const KI_EMULNAMELEN = 16; |
| 686 | | pub const KI_NGROUPS = 16; |
| 687 | | pub const LOGNAMELEN = 17; |
| 688 | | pub const LOGINCLASSLEN = 17; |
| 689 | | |
| 690 | | pub const KI_NSPARE_INT = 2; |
| 691 | | pub const KI_NSPARE_LONG = 12; |
| 692 | | pub const KI_NSPARE_PTR = 5; |
| 693 | | |
| 694 | | pub const RUSAGE_SELF = 0; |
| 695 | | pub const RUSAGE_CHILDREN = -1; |
| 696 | | pub const RUSAGE_THREAD = 1; |
| 697 | | |
| 698 | | pub const proc = opaque {}; |
| 699 | | pub const thread = opaque {}; |
| 700 | | pub const vnode = opaque {}; |
| 701 | | pub const filedesc = opaque {}; |
| 702 | | pub const pwddesc = opaque {}; |
| 703 | | pub const vmspace = opaque {}; |
| 704 | | pub const pcb = opaque {}; |
| 705 | | pub const lwpid_t = i32; |
| 706 | | pub const fixpt_t = u32; |
| 707 | | pub const vm_size_t = usize; |
| 708 | | pub const segsz_t = isize; |
| 709 | | |
| 710 | | pub const itimerval = extern struct { |
| 711 | | interval: timeval, |
| 712 | | value: timeval, |
| 713 | | }; |
| 714 | | |
| 715 | | pub const pstats = extern struct { |
| 716 | | cru: rusage, |
| 717 | | timer: [3]itimerval, |
| 718 | | prof: extern struct { |
| 719 | | base: u8, |
| 720 | | size: c_ulong, |
| 721 | | off: c_ulong, |
| 722 | | scale: c_ulong, |
| 723 | | }, |
| 724 | | start: timeval, |
| 725 | | }; |
| 726 | | |
| 727 | | pub const user = extern struct { |
| 728 | | stats: pstats, |
| 729 | | kproc: kinfo_proc, |
| 730 | | }; |
| 731 | | |
| 732 | | pub const pargs = extern struct { |
| 733 | | ref: c_uint, |
| 734 | | length: c_uint, |
| 735 | | args: [1]u8, |
| 736 | | }; |
| 737 | | |
| 738 | | pub const priority = extern struct { |
| 739 | | class: u8, |
| 740 | | level: u8, |
| 741 | | native: u8, |
| 742 | | user: u8, |
| 743 | | }; |
| 744 | | |
| 745 | | pub const rusage = extern struct { |
| 746 | | utime: timeval, |
| 747 | | stime: timeval, |
| 748 | | maxrss: c_long, |
| 749 | | ixrss: c_long, |
| 750 | | idrss: c_long, |
| 751 | | isrss: c_long, |
| 752 | | minflt: c_long, |
| 753 | | majflt: c_long, |
| 754 | | nswap: c_long, |
| 755 | | inblock: c_long, |
| 756 | | oublock: c_long, |
| 757 | | msgsnd: c_long, |
| 758 | | msgrcv: c_long, |
| 759 | | nsignals: c_long, |
| 760 | | nvcsw: c_long, |
| 761 | | nivcsw: c_long, |
| 762 | | }; |
| 763 | | |
| 764 | | pub const kinfo_proc = extern struct { |
| 765 | | structsize: c_int, |
| 766 | | layout: c_int, |
| 767 | | args: *pargs, |
| 768 | | paddr: *proc, |
| 769 | | addr: *user, |
| 770 | | tracep: *vnode, |
| 771 | | textvp: *vnode, |
| 772 | | fd: *filedesc, |
| 773 | | vmspace: *vmspace, |
| 774 | | wchan: ?*const anyopaque, |
| 775 | | pid: pid_t, |
| 776 | | ppid: pid_t, |
| 777 | | pgid: pid_t, |
| 778 | | tpgid: pid_t, |
| 779 | | sid: pid_t, |
| 780 | | tsid: pid_t, |
| 781 | | jobc: c_short, |
| 782 | | spare_short1: c_short, |
| 783 | | tdev_freebsd11: u32, |
| 784 | | siglist: sigset_t, |
| 785 | | sigmask: sigset_t, |
| 786 | | sigignore: sigset_t, |
| 787 | | sigcatch: sigset_t, |
| 788 | | uid: uid_t, |
| 789 | | ruid: uid_t, |
| 790 | | svuid: uid_t, |
| 791 | | rgid: gid_t, |
| 792 | | svgid: gid_t, |
| 793 | | ngroups: c_short, |
| 794 | | spare_short2: c_short, |
| 795 | | groups: [KI_NGROUPS]gid_t, |
| 796 | | size: vm_size_t, |
| 797 | | rssize: segsz_t, |
| 798 | | swrss: segsz_t, |
| 799 | | tsize: segsz_t, |
| 800 | | dsize: segsz_t, |
| 801 | | ssize: segsz_t, |
| 802 | | xstat: c_ushort, |
| 803 | | acflag: c_ushort, |
| 804 | | pctcpu: fixpt_t, |
| 805 | | estcpu: c_uint, |
| 806 | | slptime: c_uint, |
| 807 | | swtime: c_uint, |
| 808 | | cow: c_uint, |
| 809 | | runtime: u64, |
| 810 | | start: timeval, |
| 811 | | childtime: timeval, |
| 812 | | flag: c_long, |
| 813 | | kiflag: c_long, |
| 814 | | traceflag: c_int, |
| 815 | | stat: u8, |
| 816 | | nice: i8, |
| 817 | | lock: u8, |
| 818 | | rqindex: u8, |
| 819 | | oncpu_old: u8, |
| 820 | | lastcpu_old: u8, |
| 821 | | tdname: [TDNAMLEN + 1]u8, |
| 822 | | wmesg: [WMESGLEN + 1]u8, |
| 823 | | login: [LOGNAMELEN + 1]u8, |
| 824 | | lockname: [LOCKNAMELEN + 1]u8, |
| 825 | | comm: [COMMLEN + 1]u8, |
| 826 | | emul: [KI_EMULNAMELEN + 1]u8, |
| 827 | | loginclass: [LOGINCLASSLEN + 1]u8, |
| 828 | | moretdname: [MAXCOMLEN - TDNAMLEN + 1]u8, |
| 829 | | sparestrings: [46]u8, |
| 830 | | spareints: [KI_NSPARE_INT]c_int, |
| 831 | | tdev: u64, |
| 832 | | oncpu: c_int, |
| 833 | | lastcpu: c_int, |
| 834 | | tracer: c_int, |
| 835 | | flag2: c_int, |
| 836 | | fibnum: c_int, |
| 837 | | cr_flags: c_uint, |
| 838 | | jid: c_int, |
| 839 | | numthreads: c_int, |
| 840 | | tid: lwpid_t, |
| 841 | | pri: priority, |
| 842 | | rusage: rusage, |
| 843 | | rusage_ch: rusage, |
| 844 | | pcb: *pcb, |
| 845 | | stack: ?*anyopaque, |
| 846 | | udata: ?*anyopaque, |
| 847 | | tdaddr: *thread, |
| 848 | | pd: *pwddesc, |
| 849 | | spareptrs: [KI_NSPARE_PTR]?*anyopaque, |
| 850 | | sparelongs: [KI_NSPARE_LONG]c_long, |
| 851 | | sflag: c_long, |
| 852 | | tdflag: c_long, |
| 853 | | }; |
| 854 | | |
| 855 | | pub const KINFO_PROC_SIZE = switch (builtin.cpu.arch) { |
| 856 | | .x86 => 768, |
| 857 | | .arm => 816, |
| 858 | | else => 1088, |
| 859 | | }; |
| 860 | | |
| 861 | | comptime { |
| 862 | | assert(@sizeOf(kinfo_proc) == KINFO_PROC_SIZE); |
| 863 | | } |
| 864 | | |
| 865 | 679 | pub const CTL = struct { |
| 866 | 680 | pub const KERN = 1; |
| 867 | 681 | pub const DEBUG = 5; |