To start I think that characters devices it's better to write, I think you can find more informations about Char device in the first book in the last message.
you got to start from some where.I would also say that character devices for start are good.
PCI standard is quite complex.I would say first get your hands straight on linux devices drivers and kernel development then you can think about PCI and stuff.