IO重定向的问题

我有这样一段脚本,请高手讲讲是怎么的含义
[code:1]#!/bin/bash
mkfifo /tmp/fifo
while read val; do echo "FIFO: $val"; done < /tmp/fifo &
exec 7> /tmp/fifo
exec 8> >(while read val; do echo "FD8: $val, to FD7"; done >7&)
exit 0
[/code:1]