Does the getwork id value do anything? When sending a getwork request, one always includes an id value. Does this value have any meaning? Will it cause problems to have multiple miners use the same id? Furthermore, if I wanted to send some extra information to a mining pool server, would id be an okay place to do it or should I add my own extra field?
If you are talking about the Bitcoin API, getwork only requires data field, which is a place to put your solution.

However, I do believe that you are talking about the id field of a JSON RPC command. It is used to identify a response to a given request. Generally, it might not be the best place to put extra information. There are already a few extensions to the getwork protocol that you might want to use instead.