A PowerShell profile is a way to add resources to your session each time you start PowerShell. The most common things to put into a profile include: functions, powershell drives, variables, and importing of modules. Anything you add to your profile will automatically be available to you the next time you start a PowerShell session.
Creating a Profile
PS C:\Users\Phil> $profile
C:\Users\Phil\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
#
# Create the profile if it doesn't exist
#
New-Item -Type file -Path $profile
#
# Open the profile in PowerShell
#
notepad $Profile
Profile Scope
PS C:\Users\Phil> $profile | Format-List -Force
AllUsersAllHosts : C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
AllUsersCurrentHost : C:\Windows\System32\WindowsPowerShell \v1.0\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts : C:\Users\Phil\Documents\WindowsPowerShell\profile.ps1
CurrentUserCurrentHost : C:\Users\Phil\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1