I'm reading Hartshorne's book, and in 3.6 he begins to go into detail about Ext and sheaf Ext, which are derived functors of Hom and sheaf Hom respectively. Let $\mathcal{F,G}$ be sheaves of $\mathcal{O}_X$ modules on a scheme $X.$ $Hom(\mathcal{F,G})$ is the set of $\mathcal{O}_X$ module homomorphisms between $\mathcal{F}$ and $\mathcal{G}$. Hence, if $\varphi \in Hom(\mathcal{F,G})$ then for every open set $U \subset X,$ we have a map $\varphi|_{U}$. On the other hand, the sheaf $\mathcal{Hom(F,G)}$ assigns to each open set $U\subset X$ the set of $\mathcal{O}_U$ module homomorphisms $Hom \mathcal{(F}(U),\mathcal{G}(U))$ (where $\mathcal{O}_U$ is considered as a ring, not a ringed space). It seems to me that both Hom and sheaf Hom encode the same information in different ways, so I don't understand why their derived functors seem different.
EDIT: Actually I think Hom and sheaf Hom might be different in the following way: for Hom, we are looking at "global maps," i.e. maps of $\mathcal{O}_X$ modules, which we can then restrict to an open set. On the other hand, sheaf Hom assigns to each open set a hom-set of maps, and some of those maps may not arise from restriction of a "global map." But since sheaf Hom is a sheaf, not a presheaf, this probably shouldn't be a problem, and all maps are indeed restrictions of global maps since we can glue them together. Am I right about this? -Hom is just the global sections of sheaf Hom. Thanks Qiaochu