[my understanding]
It's very very fine contrast control. If you imagine pixel a is white, b is grey and c is black. And the subject is a black edge on a white piece of paper. The grey pixel is a mix of black & white because you weren't sharp. Sharpening will turn that pixel black or white. Obviously on megapickle images it's scaled up, and includes all the colours. But if you zoom in to pixel level on a "blurry edge" what you actually see is a mix of the colours and tones that surround it. The sharpening software will find these blurry mixes of colours and tones and try to straighten them out based on what's around them making them less muddy and more defined with the overall effect to the eye of a sharper image.
[Lightroom caveat]
The Clarity slider uses a similar technique and is just "sharpening with a hammer" but you can see the contrast in the image change as it tries to "clear up" the image by adjusting the edge contrast. If you take the clarity slider the other way, it does the opposite. Literally finding stuff that's *not* an edge and smoothing out tone and colour.
If you use sharpening in Lightroom and hold the ALT key down as you move the "masking" slider, you can see LR try and pick up *just* the edges which allows you to just sharpen the edges rather than sharpening every pixel in the image.
[/Lightroom caveat]
Over sharpening occurs when the user gets too heavy handed with the "amount" slider. The more "amount" you use, the wider and less tolerant the software is of the grey areas, typically sharpening a "thicker" band of pixels around the edge. You can see this by trying to sharpen a really old digital photo from a 6MP camera (for example) vs the same sharpening on a 40MP camera. It's blindingly obvious on the small image, but barely noticeable on the larger one.
Over sharpening can also occur when the sharpening software is applied to the whole image rather than just the areas that need to be sharp. Some people counter this by creating a mask in their software and "painting" the sharpness into the areas they want. Others (like me) just use the auto-masking function in LR. Again, these can be taken to extremes in the software.
Because sharpening is a pixel level thing, the size of the image is important too. If you take a 400x600 screen grab and try to sharpen it, there are physically less pixels to work with vs a native DSLR image (or high res scan).
[/my understanding]
I'm sure others will chime in to correct me...