Major `cat` improvementsmaster
commit68706d908dccf62c4e27f79cd0999f69a07eb7cd
authorAlan Potteiger <alanpotteiger@gmail.com>
Sat, 26 Nov 2022 00:18:36 +0000 (26 01:18 +0100)
committerAlan Potteiger <alanpotteiger@gmail.com>
Sat, 26 Nov 2022 00:18:36 +0000 (26 01:18 +0100)
tree29ed97a075053a3d23f9e12309e77a2ea22ae96e
parentf30d80b2f7e43bdb0975abab34f5cf6c52817446
Major `cat` improvements

`simplecat()` is a function for printing files smaller than the systems
page size, mmaping these files would be pointless. Also used for stdin.

`fastcat()` is `splicecat()` on Linux, it utilizes the `splice(2)`
syscall. On other platforms it is `mapcat()` which utilites the
`mmap(2)` syscall. This is only worth the performance boost for
files larger than the systems page size, otherwise it can be a
performance hit.
cat.c