[lkml]   [1998]   [Jul]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: I/O permissions for V86 tasks (Enhanced V86 Mode)?
    Hi Ian and others,

    After Ian's last email I started investigating what would be
    necessary to change the kernel code such that it has a variable sized
    I/O bitmap so that we can avoid the overhead of an 8Kb I/O bitmap for
    evert task. It appears that in the latest kernel development sources
    (I am looking at 108; I have yet to install 109) the tss.bitmap
    pointer is initially set to point past the end of the TSS structure
    so that it causes a seg fault for any I/O access (unless of course
    iopl(3) is in effect). The bitmap itself is not actually initialised
    until the first time a thread calls the ioperm() system call.

    Now this means that the kernel *could* be modified such that the I/O
    bitmap is not allocated at all by default for a task, and the
    allocation of the I/O bitmap is staved off until a task calls the
    ioperm() system call. In order for this to work the I/O bitmap itself
    would need to be stored at the end of the task structure so that it
    can be variable in size, but I don't know if this is possible (is
    it?). Then the default size for a task can include a basically empty
    I/O bitmap, and the ioperm() system call can reallocate the
    task_struct to include the larger I/O bitmap as necesary.

    Also if we do it that way, we can simply have the ioperm() system
    call allocate a full 8Kb I/O bitmap for all tasks that request
    specific I/O permissions, and those tasks are going to be few and far
    between (DOSEMU stuff mostly, since the X server will doing an

    Any comments on this? All the stuff is already in place in the
    current development kernels, so all I need to figure out is how to
    place the I/O bitmap at the end of the task structure and reallocate
    the memory for the task structure to include the enlarges I/O bitmap.

    Or perhaps I am missing something really obvious here?


    | SciTech Software - Building Truly Plug'n'Play Software! |
    | Kendall Bennett | Email: |
    | Director of Engineering | Phone: (530) 894 8400 |
    | SciTech Software, Inc. | Fax : (530) 894 9069 |
    | 505 Wall Street | ftp : |
    | Chico, CA 95928, USA | www : |

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:43    [W:0.020 / U:33.008 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site