Difference between revisions of "Kernel Sysctls"

From The iPhone Wiki
Jump to: navigation, search
(Starting a page for iOS specific sysctls)
(No difference)

Revision as of 16:30, 29 February 2012

XNU exports to user mode a fairly rich array of system control variables. These are known as sysctls, and can be accessed by the system call of the same name.

Sysctls are especially important because they allow the probing of kernel memory (in select locations), and - in some cases, the modification thereof. iOS offers all the sysctls its OS X counterpart does, but also a few additional ones:

Jetsam related:

- kern.memorystatus_priority_list
- kern.memorystatus_snapshot

TCP related: These are likely here to optimize for iOS's mobile (i.e. over 3G/cell) medium

- net.inet.tcp.rfc3390: RFC 3390 compliance (Calculate intial slowstart cwnd depending on MSS)
- net.inet.tcp.min_iaj_win: Minimum recv win based on inter-packet arrival jitter
- net.inet.tcp.acc_iaj_react_limit: Accumulated inter-packet arrival jitter when receiver starts to react
- net.inet.tcp.doautosndbuf: Enable send socket buffer auto-tuning
- net.inet.tcp.autosndbufinc: Increment in send socket bufffer siz
- net.inet.tcp.autosndbufmax: Maximum send socket buffer size