Why is the page life expectancy 0 (zero) on SQL Server 2005
I would start with doing the steps outlined here:

How to rebuild the performance counters of a SQL Server 2005 or 2008 instance

Update August 2015: Above link appears broken. Alternative reference:

Troubleshooting: SQL Server (2005, 2008) Performance Counter Collection Problems (CSS)

Essential steps from the linked resource

Using an elevated administrator command prompt perform the following steps. 


Change the path to the BINN directory of the SQL Server instance you desire to correct.
(Ex: C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\Binn) 
Execute unlodctr &lt;&lt;REGISTERED SERVER NAME&gt;&gt;
For example: unlodctr MSSQL$SQL2008 or SQLAgent$SQL2008 ...
Execute lodctr /T:&lt;&lt;perf-sql* matching the counters you desire to load&gt;&gt;
For example: perf-MSSQL$SQL2008sqlctr.ini or perf-SQLAgent$SQL2008sqlagtctr.ini for SQLAgent. The /T is important to load the SQL Server performance counter provider as a trusted provider. 
Cycle the remote registry service:
net stop "Remote Registry" then net start "Remote Registry"
Force a WMI synchronization using winmgmt /resyncperfctr "&lt;&lt;PID&gt;&gt;"
where PID is the process id of the WinPriv.exe (you can get this from Task Manager)


Additionally, from this resource, the following may also be required:


Make sure that the correct security permissions have been granted to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009
registry key:


Grant Full Control permissions to the Creator Owner account.
Grant Full Control permissions to the Administrators account.
Grant Read permissions to the SQL Administrators on that box/Node.
Grant Full Control permissions to the System account