¿Límite de tamaño de archivo para read ()?

Me encuentro con un problema al intentar cargar archivos grandes con Python 3.5. Utilizandoread() sin argumentos a veces dio unOSError: Invalid argument. Luego intenté leer solo una parte del archivo y parecía funcionar bien. He determinado que comienza a fallar en algún lugar2.2GBa continuación se muestra el código de ejemplo:

>>> sys.version
'3.5.1 (v3.5.1:37a07cee5969, Dec  5 2015, 21:12:44) \n[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]'
>>> x = open('/Users/username/Desktop/large.txt', 'r').read()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OSError: [Errno 22] Invalid argument
>>> x = open('/Users/username/Desktop/large.txt', 'r').read(int(2.1*10**9))
>>> x = open('/Users/username/Desktop/large.txt', 'r').read(int(2.2*10**9))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OSError: [Errno 22] Invalid argument

También noté que esto no sucede en Python 2.7. Aquí está el mismo código ejecutado en Python 2.7:

>>> sys.version
'2.7.10 (default, Aug 22 2015, 20:33:39) \n[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.1)]'
>>> x = open('/Users/username/Desktop/large.txt', 'r').read(int(2.1*10**9))
>>> x = open('/Users/username/Desktop/large.txt', 'r').read(int(2.2*10**9))
>>> x = open('/Users/username/Desktop/large.txt', 'r').read()
>>>

Estoy usando OS X El Capitan 10.11.1.

¿Es esto un error o debería usar otro método para leer los archivos?

Respuestas a la pregunta(1)

Su respuesta a la pregunta