no files can be opened in a C program

Manish Katiyar mkatiyar at gmail.com
Tue Jul 26 00:41:57 EDT 2011


On Mon, Jul 25, 2011 at 9:29 PM, Abhijit Pawar <apawar.linux at gmail.com> wrote:
> Hi Dave,
> On 07/25/2011 09:20 PM, Dave Hylands wrote:
>> Hi Abhijit,
>>
>> On Mon, Jul 25, 2011 at 6:35 AM, Abhijit Pawar<apawar.linux at gmail.com>  wrote:
>>> On 07/25/2011 05:29 PM, Naveen Kumar wrote:
>>>
>>> You can use command ulimit -a, there you can check the limit for a process.
>>>
>>> Thanks,
>>> Naveen
>>>
>>> Ulimit gives 1024 as open file limit. In struct task_struct it has a member
>>> called struct files_struct *files;
>>>
>>> I tried checking for this member and the limit however I am  not able to
>>> decide correctly why the limit is 1024.
>>>   Also, is there any distinction between 32 bit and 64 bit systems for this
>>> limit?
>> My 64-bit system reports 1024 as well.
>>
>> I have no troubles compiling kernels.
>>
> Thanks. Yes, on my 64 bit Fedora 15 I get same value as yours.
>
> What I am interested in is knowing why the limit is on 1024 File
> Descriptors? That means 1024 Inodes. AFAIK there isnt anything written
> in filesystem code which will put this limit of 1024 inodes for a process.
> This means its very specific to the process.
> Unfortunately I am know having details on the process front. Is there
> anything which you or anyone aware in process area because of which this
> limit is there?

man getdtablesize

-- 
Thanks -
Manish



More information about the Kernelnewbies mailing list