Depends how you build your projection matrix, you could do anything in there. OpenGL has the function glFrustum and that clearly documents what goes in the projection matrix, so if you build your projection matrix using that call then you get this:
The transformation to the viewport is also defined as a separate stage but it is pretty intuitive. Basically after homogeneous divide -1 to +1 in x & y map to the viewport edges. i.e. before the homogeneous divide, the raw data out of the matrix gives x=-w, x=+w map to the left and right of the viewport and y=-w, y=+w are the bottom and top of the viewport. If you need information of exact subpixel positioning then see any version of the spec:
P.P.S. focal length is meaningless in this context. Typically this determines the field of view in photographic systems based on film/sensor size and other configuration parameters. Basically you are asking for the field of view and that can easily be determined from the matrix or the glFrustum parameters.
You need to correlate this with particular focal lengths in your camera system and what field of view they generate on your sensor.
Based on your question and phrasing I think this demo I wrote may interest you: