Skip to content
jc-rs
GitHub

proc-devices

--proc-devicesv1.0.0

Converts `/proc/devices` file to JSON

Linuxfileslurpable
$ jc-rs /proc/devices

A real pair

From the reference corpus (linux-proc/devices.json). The left pane is the input the fixture ships; the right pane is the corpus's expected JSON. CI compares jc-rs with it field by field under the published differential. Hover a value to see where it came from.

/proc/deviceslinux-proc
Character devices:
  1 mem
  4 /dev/vc/0
  4 tty
  4 ttyS
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
  5 ttyprintk
  7 vcs
 10 misc
 13 input
 14 sound/midi
 14 sound/dmmidi
 21 sg
 29 fb
 81 video4linux
 89 i2c
108 ppp
116 alsa
128 ptm
136 pts
180 usb
189 usb_device
204 ttyMAX
226 drm
238 media
239 hidraw
240 aux
241 cec
242 BaseRemoteCtl
243 vfio
244 bsg
245 watchdog
246 ptp
247 pps
248 rtc
249 dma_heap
250 dax
251 dimmctl
252 ndctl
253 tpm
254 gpiochip

Block devices:
  7 loop
  8 sd
  9 md
 11 sr
 65 sd
 66 sd
 67 sd
 68 sd
 69 sd
 70 sd
 71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
253 device-mapper
254 mdp
259 blkext
expected outputjson
Use the Left and Right arrow keys to highlight the matching value in the input.
{
  "character": {
    "1": [
      "mem"
    ],
    "4": [
      "/dev/vc/0",
      "tty",
      "ttyS"
    ],
    "5": [
      "/dev/tty",
      "/dev/console",
      "/dev/ptmx",
      "ttyprintk"
    ],
    "7": [
      "vcs"
    ],
    "10": [
      "misc"
    ],
    "13": [
      "input"
    ],
    "14": [
      "sound/midi",
      "sound/dmmidi"
    ],
    "21": [
      "sg"
    ],
    "29": [
      "fb"
    ],
    "81": [
      "video4linux"
    ],
    "89": [
      "i2c"
    ],
    "108": [
      "ppp"
    ],
    "116": [
      "alsa"
    ],
    "128": [
      "ptm"
    ],
    "136": [
      "pts"
    ],
    "180": [
      "usb"
    ],
    "189": [
      "usb_device"
    ],
    "204": [
      "ttyMAX"
    ],
    "226": [
      "drm"
    ],
    "238": [
      "media"
    ],
    "239": [
      "hidraw"
    ],
    "240": [
      "aux"
    ],
    "241": [
      "cec"
    ],
    "242": [
      "BaseRemoteCtl"
    ],
    "243": [
      "vfio"
    ],
    "244": [
      "bsg"
    ],
    "245": [
      "watchdog"
    ],
    "246": [
      "ptp"
    ],
    "247": [
      "pps"
    ],
    "248": [
      "rtc"
    ],
    "249": [
      "dma_heap"
    ],
    "250": [
      "dax"
    ],
    "251": [
      "dimmctl"
    ],
    "252": [
      "ndctl"
    ],
    "253": [
      "tpm"
    ],
    "254": [
      "gpiochip"
    ]
  },
  "block": {
    "7": [
      "loop"
    ],
    "8": [
      "sd"
    ],
    "9": [
      "md"
    ],
    "11": [
      "sr"
    ],
    "65": [
      "sd"
    ],
    "66": [
      "sd"
    ],
    "67": [
      "sd"
    ],
    "68": [
      "sd"
    ],
    "69": [
      "sd"
    ],
    "70": [
      "sd"
    ],
    "71": [
      "sd"
    ],
    "128": [
      "sd"
    ],
    "129": [
      "sd"
    ],
    "130": [
      "sd"
    ],
    "131": [
      "sd"
    ],
    "132": [
      "sd"
    ],
    "133": [
      "sd"
    ],
    "134": [
      "sd"
    ],
    "135": [
      "sd"
    ],
    "253": [
      "device-mapper"
    ],
    "254": [
      "mdp"
    ],
    "259": [
      "blkext"
    ]
  }
}

Fixture coverage

1/1oracle-valid pairs match under the published structural JSON comparison

Magic syntax

jc-rs /proc/devicesjc-rs reads this kernel-interface file directly and dispatches it through the matching /proc parser.

Source: crates/jc-rs-parsers/src/proc/proc_devices.rs. jc-rs targets the schemas defined by the original Python tool. Fixture coverage above is the measured evidence for this parser; test the inputs your pipeline depends on. Compare