WHat is an interrupt within a computer? HOw is it generated and processed?
102163
In the old days, computers didn't have interrupts. Computers get faster and faster, but some things like, say, printers, don't get a lot faster. So let's say the computer needs to print a character. In the old days, the computer would just wait for the printer to finish before it would continue.\n\nBut this slows the computer down painfully (not just printers; disk drives, modems, etc. all have this problem). So designers make it so when the printer doesn't have anything to do, it can generate an interrupt. The computer stops what it is doing, saves everything it is doing, and then it can send a character to the printer (knowing it is not busy) and then goes back to what it was doing before. When that character is printed, the computer gets another interrupt and repeats the process.\n\nThis increases throughput. It also makes the system more responsive. When you press a keyboard key, the system responds immediately because of interrupts. Or when data comes into a modem, you don't want to miss it -- interrupts.\n\nMost computers support multiple levels of interrupt, so that a higher priority interrupt (hard disk) can preempt a lower priority interrupt (keyboard).\n\nInterrupts are also a tough place to write code, since you have to be careful not to disturb what the computer was doing before.\n\nOther examples of interrupts: real time clock (the PC usually interrupts 18.2 times per second to update the clock), VGA card, mouse, USB port, network card, etc.\n\nNote that when the computer is doing something very important, it can choose to ignore interrupts but that's unusual. Some computers have an NMI (non-maskable interrupt) that the computer can't easily ignore for very high priority interrupts.
614947
#include <iostream.h>\n#include <conio.h>\n#include <process.h>\n\nmain()\n\n{\n\nchar c;\n\nclrscr();\ncout<<"Press 0 to exit&#92;n";\n\ndo\n{\n\n c=getch();\n\n switch(c)\n {\n   case '0': exit(0);\n   case '1': cout<<"I";break;\n   case '2': cout<<"L";break;\n   case '3': cout<<"o";break;\n   case '4': cout<<"v";break;\n   case '5': cout<<"e";break;\n   case '6': cout<<"U";break;\n }\n\n} while (1);\nreturn 0;\n}
469705
Basically you'll need to open a port on each of the two processes, and send a packet between them to communicate.  Generally that will be structured as a sending/"talking" process and a "listening" process to catch the sent packet. In C, you'll need to check the library for the operating system and compiler you're using to find the appropriate functions.  Look under "low level IO", usually.
313624
As far as I understand on a processor with HT the operating system would recognize it as two processors. (Ofcourse there are other design options, but this is the simplest choice and keeps the OS independent of the way the threads are scheduled).
856142
RAM cannot store information unless your computer is running.  As soon as you turn it off, all the information in RAM is gone.
710778
This is not nescessary. whenever the computer shuts down, everything in memory is erased. If you are looking to remove a process that runs and is taking up ram you must locate the actual progam that is loading that process into ram.
116003
It almost sounds as if your project is going to eventually become a "virtual machine", or better yet a simulated computer.\n\nThe first step is to determine your instruction set.  The computer will probably have the ability to perform simple arithmetic, such as add, subtract, multiply, divide, shift, jump to memory locations, etc.  Each of these operations will use a unique sequence of 'bits' to identify the specific operation.  For example, you can say that your machine only supports only sixteen instructions.  Because it is sixteen, we can identify each instructions with four bits:\n\nMOV   0000 - move data\nADD   0001 - add data\nSUB   0010 - subtract data\nMPY   0011 - multiply data\nDIV   0100 - divide data\nAND   0101 - bitwise 'and'\nOR    0110 - bitwise 'or'\nXOR   0111 - bitwise 'exclusive or'\nNOT   1000 - invert bits\nJMP   1001 - unconditional jump\nCMP   1010 - compare values\nJEQ   1011 - jump if equal\nJL    1100 - jump if less than\nJG    1101 - jump if greater than\nJLE   1110 - jump if less or equal\nJGE   1111 - jump if greater or equal\n\nOnce you determine the instructions the computer will support, you need to determine your addressing modes.  For example, an "add" instruction can work with two registers, two memory addresses, a memory address and a register, or indirect combinations of both.  For each addressing mode, we will assign a sequence of bits.  I'm going to choose only four addressing modes, "immediate" (where the data in the instruction is taken as a literal value), "memory" (where the data in the instruction is a memory address), "register" (where the data in the instruction is a register number) and "indirect" (where the value in a register is a memory address to where the data points).  I will use two bits to identify the source addressing mode, an another two bits to identify the destination addressing mode.  If the instruction only uses one destination, the second two bits would be used.  This is now a total of four bits which we combine with the first four bits of the opcode.  Below are the bits we will use for the modes:\n\nImmediate - 00\nRegister - 01\nMemory - 10\nIndirect Register - 11\n\nNow, we have defined a fairly competent instruction set that identifies the operations and addressing modes with only one byte of data!\n\nJust to show "mnemonics" of the assembly language of our computer, with addressing modes, consider the following:\n\nADD 10, R2 - Add number 10 to register 2 (immediate/register)\n\nADD R1, R2  - Add register 1 to register 2 (register/register)\n\nADD @MEM1, R2 - Add value in memory at MEM1 to register 2 (memory/register)\n\nADD *R1, R2 - Add value pointed to by address in register 1 to register 2 (indirect/register)\n\nNow, they would equate, in bits to the following:\nADD 10, R2      0001 00 01  (11 in hexadecimal)\nADD R1, R2      0001 01 01  (15 in hexadecimal)\nADD @MEM1, R2   0001 10 01  (19 in hexadecimal)\nADD *R1, R2     0001 11 01  (1D in hexadecimal)\n\nNote that each instruction and addressing mode is one byte, but only part of the complete instruction.  You can use the bitwise and (&) operator in C++ in order to mask off the opcode and addressing modes from that single byte (unsigned char).  So:\n\nopcode = byte & 0xF0;       (1111 0000)\nsourcemode = byte & 0xC0;   (0000 1100)\ndestmode = byte & 0x03;     (0000 0011)\n\nOnce we've determine the addressing mode for each one, the next sequence of bytes after the opcode and mode would be either the immediate value, a register value or a memory address.  The remainder of each instruction can be either a fixed or variable number of bytes, that is your choice.\n\nFrom there, you just process a stream of bytes and you can get the extract the operation, addressing mode, data for source and destination (or just destination if its a single operand).  Next, your "virtual machine" needs to sim
514847
In case of Windows\n\nWindows+L\nCTRl+ALT+DEL - Lock the computer
129684
What is that "pause"??? Is it from java,c or C++\nI havent heard of that in any language.\nHere are the equivalent statements\ncontinue - goto <Label> \nbreak - Exit For
1152771
First in response to your question another question.\nAre you talking about Interrupt Service Routines?\n\nIf yes, usually in an ISR you disable interrupt handling, on exit again enable ISR. And still if something lengthy has to be carried out delegate it to some other function like timer etc.
299395
There can be many a reasons for it\n\n1) You are trying to call up an Interrupt Request\n2) You are trying to access hardware directly.\n3) You are trying to write to a memory location that is prohibited.\n4) You may be missing some required library file.\n5) You may be throwing an unhandled system exception/error.\n\nHere you refers to your program or the native code compiler. For you have not mentioned as where exactly does the problem occur, while executing or while compiling the code.
831372
Its a vague question, but it has an easy answer. There are several things required to "control" a computer, none more important than the other. The first is of course the CPU, which handles all the instructions the computer executes and generates many control signals for the rest of the computer. The CPU also performs aritimetic and logic functions. Next is the clock generator/controller, a circuit that generates timing and some control signals for the CPU and rest of the computer. Then there is memory, which comes in two general forms, ROM and RAM. ROM stands for Read Only Memory and RAM stands for Random Access Memory. RAM is the portion of memory where computers store temporary information. These three general circuits make up the control system for computers. But for a computer to be of any use it needs Input/Output circuits like USB, parallel, serial, video, etc.
38452
Interrupted would mean the task was being done and then got stopped (or interrupted) by something and then it would start up again.\n\nPreempted means that something else more important got done instead of that task.
310056
lol\n\nur computer will restart in 60second\nNT/Authority...RPC problem....\n\nmsblast 4ever
1025646
Various programs running in the background can "wake up" your computer to update themselves over the internet, run scheduled tasks, or things of that nature.  That would be my guess!
309854
An input device provides data to the computer, like your keyboard feeds characters into it.\n\nAn output device transfers information outside, like your monitor that shows processed information.\n\nAn input/output device feeds and gets information to/from the computer.  For instance, the PC transfers data to a hard disk where it gets stored (output), and gets it back from the disk to run a program or process data (input).
115675
Buffer is a memory used to do any process without interrupt..\nA temporary storage before starting any process..\nBuffering video before playback starts & Buffering data before writing are examples for this..\nso if u dont get data suddenly in between a process, the program will take from buffer so that playback/writing dont get interrupted..\n\n\nThe amount of buffer used to store data during a process is called the buffer level..