You are trying to allocate memory to a matrix for more memory than is available in your RAM. The solution completely depends upon what you are trying to do. The operation
x = ones(10,1);
creates an array of 10 elements of type double. The size of this array is 10*8 = 80 bytes (since 8 is the number of bytes required for double precision). At some point in your code you must be trying to do some operation which requires more memory than you have available for you computer. Again, solutions will vary based on what you're trying to do, but you could trying doing your operation on chunks of data at a time.