GNU is a ‘recursive acronym’ which stands for Gnu’s Not Unix. What is it, then?
As you have learned in What is a Kernel?, there are many parts in a computer-system. While Linux as the Kernel provides core-functionality, there are many other pieces of software needed to make a PC workable.
Such basic programs are a commandline interpreter (such as bash), editors (vi, emacs, …), compiler (gcc), text-processing (groff, tex, …). These classic parts of the UNIX operating system are needed to run the system.
The GNU-Project was founded in order to build a free unix-like operating-system step-by-step. The reasoning was: “If we replace all those UNIX-commands and programs by our free version, and each of ours runs well on an original system, then they also run well together. If we have a complete replacement for all (or at least most) of those programs, all we need is a kernel of our own and the system is complete.”
While the user-space tools mentioned above where created quite fast and ported to many operating system, the actual Kernel of the GNU project (Hurd) is still not ready for production. Linux Torvalds filled the gap by writing a kernel. Thus the complete system is often referred to as GNU/Linux, meaning “The GNU-tools running on the Linux kernel” in contrast to GNU/Hurd, meaning “The GNU-tools running on the Hurd kernel”.
So, GNU is not Unix. It is a free replacement of Unix. It is an “unix-like” OS.
For more information, go to the GNU website