Por que permisos 777 y 666 ? Linux

Hola, tengo dos dudas sobre los permisos: 1.- Por que se usan los permisos 777 en directorios y 666 sobre ficheros regulares. 2.- Si resto el valor umask 0177 a un fichero con permisos 0666 que le pasa?

Lo primero es que debes entender que significar esos numero para poder que entender que pasara cuando hagas cambio de los permisos sobre carpetas y archivos
existen 3 grupos en Linux:

A-usuario propietario, creador del archivo o carpeta
B-Grupos conjuntos de usuarios pertenecientes a una misma clase
C-Otros cualquier usuario del sistema

primero

rwx, read (lectura), Write (escritura), Execution (ejecucion)

4=Lectura
2-escritura
1-Ejecucion

Si un archivo o carpeta tiene esto cualquier usuario puede leer,escribir,ejecutar
el archivo que tiene esos permisos

mira

777

el propietario tiene 4+2+1=7 es decir puedo leer,escribir y ejecutar

el grupo tiene los mimos
Los otros tiene los mismo
en cuanto 666 4+2 cado es decir
el propietario puedo leer y escribir sobre el archivo o carpeta
el grupo m tiene los mismo
los otros tiene lo mismo
el primer 7 pertenece al propietario el segundo al grupo y el tercero los otros

1.- Porque generalmente necesitas que un directorio tenga permiso de ejecución, para poder hacer en él cosas como un 'ls'. De todos modos, prueba a quitar ese permiso y lo verás. 
2.- El umask no se resta. Si creas un archivo, estando activo ese umask, sus permisos serán 0600.