The 17th day of the 30-day homemade Operating system command-line window

Source: Internet
Author: User

We made a new task by separate the command-line window.
To implement character input, simply send data to the Console_task (Command-line window Task) FIFO when the keyboard is pressed. But to send the data you must know the memory address of the struct FIFO.
Put the struct FIFO into the struct task. There are basically no tasks that are completely non-FIFO, so we bind them together.

struct TASK {    int// sel is used to save the index of GDT    int priority;    struct FIFO32 fifo;    struct TSS32 tss;};

When you switch to a command-line window, the system sends keyboard data to the command-line window task, supporting the general character input and backspace. Because timers are also used in command-line windows, in order not to conflict with keyboard data, we add 256 to the value of the keyboard data when writing to the FIFO.

Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.

The 17th day of the 30-day homemade Operating system command-line window

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.