Real-Time Video Recording (ionice equivalent)

Debacker debackerl at gmail.com
Tue Jul 27 19:15:40 UTC 2010


Hi,

I'm looking for a ionice equivalent for FreeBSD. Let suppose that I setup a
NAS using FreeBSD. I can substain 50MiB/s writing.
Let suppose that I have a 720p security camera, writing at 2 MiB/s in a
file. Then I have 10 users copying files around.
All of this activity (camera + users) through Samba, so each connection has
a dedicated process.

Problem is that I want to give camera's maximal priority to guarantee smooth
recording.

I don't expect Samba to use much CPU, 99% should be spent in IO. So if I set
the nice value of camera's process to Real-Time, it should do much, because
its process will be on wait status most of the time.
Consequently, when some IO requests coming from camera's process are in the
queue, I want them to have top priority compared to requests coming from
other processes.
As the camera is limited to 2MiB/s, I expect the system to remain
responsive.

I know that seeks may lower the speed of the HDD, but as the HDD is slowing
down, completing requests, I expect the number of camera IO requests to
increase in the queue, and to be packed together, hopefully, stabilizing the
number of seeks.

BTW, I would use "root preexec" setting of Samba to execute a shell script
for each new connection, giving best priority to the process if the user is
"camera".

Any idea?

Thanks

Laurent Debacker


More information about the freebsd-questions mailing list