Under USB, it's just another key, nothing special in the hardware, etc...
Under PS2 (wire protocol), there are three protocols Mode 1, 2 and 3 (aka scancode sets), MS sets keyboards to mode 2 on boot, 122 key keyboards only know how to do mode 3, 83 key keyboards only mode 1, etc...
Mode 3 is my favourite, you can either get repeat or make/break events for all keys. Since the OS can handle the repeat, the protocol can handle make break for all keys. Each key has a 1 byte code, and to break, two bytes are sent 0xF0, followed by the normal make code. This is pleasantly simple compared to the mode 2 situation.
In Mode 2, some keys have single byte make codes, others two or more bytes, usually starting with an e0... The pause key only has a make code under mode 2 (aka scancode set 2), and no break code.
So, if the make code of a key is c, the break code will be f0 c. If the make code is e0 c, the break code will be e0 f0 c. The Pause key has the 8-byte make code e1 14 77 e1 f0 14 f0 77.
(a little more info at, say http://www.win.tue.nl/~aeb/linux/kbd/scancodes-10.html
Under mode 1, each key gets a make code under 128, and the break is that value plus 128 - i.e. 0x80. So, both make and breaks are both single byte messages. This would have been really sweet, unfortunately, the way the control codes were laid out within much of the same value-space, it was not possible to extend this scheme to handle the 101+ sized keyboards.