Link to home
Start Free TrialLog in
Avatar of carchitect
carchitect

asked on

Screen Resolution when computers boots

my question is simple ....when computer starts....we get information about memory etc on monitor...that time who is controlling the screen resolution....for e.g it is X*Y .Now which program is controlling that resolution and how earliest it can be changed ....if we have windows it can be set....on linux it can be written in lilo....am i right in this concept or i am totally wrong.....while reading dos ....it was mentioned there that there is some RAM alloted to screen portion which can be changed using program, has it to do anything with screen resolution at the time when computer starts..


i am totally confused for this.....any ideas
regards
Avatar of Rikis
Rikis

Information about memory etc shows BIOS and also BIOS controls screen resolution. And no, you can't change resolution, then BIOS shows information ( only text mode displayed). You can only change resolution, then i.e. win9x boots through DOS (only then loaded command.com you can load DOS programs in autoexec.bat). Get that DOS programs is not easy, program must have your video card settings etc(or ansi.sys have few similar functions). Try video card manufacturer homepage.
Avatar of carchitect

ASKER

ok i got what u r saying....can i catch you on msn if u have any id on msn...mins is carchitect@hotmail.com.....my question is changing its direction from screen resolution to some other thing and i am explaining it in that context.

when computer is switched on.....power goes to different parts of computer....Now what is the first step after that...or i mean....when computer gets power....who starts working initially...like does power goes to processor and it gets some signal to start working....it reads bios memory and executes the program written in it ....then displays information about RAM etc...to video memory...

lets say video memory has been assigned from one address to another and at start nothin is displayed...now when processor executes bios program , it changes the contents of video memory and we get the informartion.....

pls explain...i am increasing points and will increase further





ASKER CERTIFIED SOLUTION
Avatar of Rikis
Rikis

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
i got it....


The moment after a computer is powered on, it is practically useless because the RAM chips contain random data and no operating system is running. To begin the boot, a special hardware circuit raises the logical value of the RESET pin of the CPU. After RESET is thus asserted, some registers of the processor (including cs and eip) are set to fixed values, and the code found at physical address 0xfffffff0 is executed. This address is mapped by the hardware to some read-only, persistent memory chip, a kind of memory often called ROM (read-only memory). The set of programs stored in ROM is traditionally called BIOS (Basic Input/Output System), since it includes several interrupt-driven low-level procedures used by some operating systems, including Microsoft's MS-DOS, to handle the hardware devices that make up the computer.

Once initialized, Linux does not make any use of BIOS but provides its own device driver for every hardware device on the computer. In fact, the BIOS procedures must be executed in real mode, while the kernel executes in protected mode, so they cannot share functions even if that would be beneficial.

BIOS uses real mode addresses because they are the only ones available when the computer is turned on. A real mode address is composed of a seg segment and an off offset; the corresponding physical address is given by seg*16+off. As a result, no global descriptor table (GDT), local descriptor table (LDT), or paging table is needed by the CPU addressing circuit to translate a logical address into a physical one. Clearly, the code that initializes the GDT, LDT, and paging tables must run in real mode.



thx for the nice help
i got it....


The moment after a computer is powered on, it is practically useless because the RAM chips contain random data and no operating system is running. To begin the boot, a special hardware circuit raises the logical value of the RESET pin of the CPU. After RESET is thus asserted, some registers of the processor (including cs and eip) are set to fixed values, and the code found at physical address 0xfffffff0 is executed. This address is mapped by the hardware to some read-only, persistent memory chip, a kind of memory often called ROM (read-only memory). The set of programs stored in ROM is traditionally called BIOS (Basic Input/Output System), since it includes several interrupt-driven low-level procedures used by some operating systems, including Microsoft's MS-DOS, to handle the hardware devices that make up the computer.

Once initialized, Linux does not make any use of BIOS but provides its own device driver for every hardware device on the computer. In fact, the BIOS procedures must be executed in real mode, while the kernel executes in protected mode, so they cannot share functions even if that would be beneficial.

BIOS uses real mode addresses because they are the only ones available when the computer is turned on. A real mode address is composed of a seg segment and an off offset; the corresponding physical address is given by seg*16+off. As a result, no global descriptor table (GDT), local descriptor table (LDT), or paging table is needed by the CPU addressing circuit to translate a logical address into a physical one. Clearly, the code that initializes the GDT, LDT, and paging tables must run in real mode.



thx for the nice help