The sys.objects view includes all objects created within the current database (including those shipped by Microsoft, which are marked in the is_ms_shipped column). These objects can be tables, views, stored procedures, constraints, user-defined functions, etc.
The sys.system_objects view includes all system objects. These objects are accessible from any database, but are not stored within the current database. Their definition is in the Resource Database (mssqlsystemresource.mdf), a hidden, read-only database, which cannot be acessed in the usual way.
The sys.all_objects view contains a UNION between sys.objects and sys.system_objects. If you want to search for objects that are created by the user, you should use the sys.objects view instead of the sys.all_objects view.
If you want to know the name of the current database, you can use the DB_NAME() function.
If you want to search for an object in all databases, you could use a cursor or (if it's a one-time thing) the undocumented stored procedure sp_MSforeachdb:
DECLARE @SQL NVARCHAR(MAX)
SET @SQL='USE ? SELECT name, object_id, type_desc, SCHEMA_NAME(schema_id), DB_NAME() FROM sys.objects WHERE name LIKE ''%'+REPLACE(@search,'''','''''''')+'%'''
EXEC sp_MSforeachdb @SQL