A ks0108 will use 13 pins, sometimes more if you use the s/w reset pin or have
a larger than 128x64 display.
Pins are the real issue with a standard Arduino board as you don't have many left over for
any type of sensor input.
A quick and easy solution for addition i/o pins (and memory too), if you don't need the arduino form factor for shields,
is to switch to a Teensy board. http://www.pjrc.com/teensy/
I have several of them and like them a lot as they can be used with breadboards and download
MUCH faster than the standard Arduino since the Teensy boards have real USB support built directly
in the AVR chip.
The latest glcd v3 library supports the Teensy boards (teensy and teensy++) out of the box.
As far as processing power goes, it depends on what you are doing. The ks0108 based glcds have
a controller that drives the actual lcd panel on the glcd module.
The Arduino merely updates the glcd module's on board memory.
So once the memory is updated, the glcd will consume no arduino resources until the display needs
to be changed. i.e. a static display will consume zero arduino CPU cycles.
The glcd library can update around 15 to 16 thousands individual pixels per second.
Updates can actually be faster depending on where the pixels are relative to one another.
So in terms of actual CPU cycles used or CPU time lost for updating the glcd,
most operations are sub millisecond.
Some operations are a bit expensive like a clear screen or rendering a large bitmap
on an odd pixel boundary.
For the most part, if you are updating small text fields,
the operations will not tax the CPU much at all.