The Synchronous And Asynchronous Communication Information Technology Essay
Problems Stealing or copying a users files- One user can copy another users program / memory space. This could be very detrimental if, for example, an administrator was running a decryption protocol, and another user stole the decryption program and key.Â
Writing over another program’s (belonging to another user or to the OS) area in memory; Using system resources (CPU, disk space) without proper accounting; Causing the printer to mix output by sending data while some other user’s file is printing.
b) Can we ensure the same degree of security in a time shared machine as in a dedicated machine? Explain your answer.
b) No, since any protection scheme devised by humans can inevitably be broken by a human, and the more complex the scheme, the more difficult it is to feel confident of its correct implementation. Time-shared machines are far less secure, and are very easy to overload the buffers. Also they are much slower to catch a virus.
2. Under what circumstances would a user be better off using a time sharing system rather than a PC or single user workstation?
Ans2. The benefits of time sharing are the same as you are using right now reading this page. A time-sharing system (what we call a server nowdays) provides many people the opportunity to use the system. Technically, even a standard PC is a time-sharing system, because you can run many different programs on it at a time (think Browser, Anti-Virus, etc.). When there are few other users, theÂ taskÂ is large, and the hardware is fast, time-sharing makes sense .
Since the mainframe has more computing power than aÂ personalÂ computer and that full computing power can be brought to bear on the user’s problem. Using a time-sharingÂ system would also be appropriate if that system has expensive resources (e.g., a colorÂ laser printer) that are not available on the personal computer. Finally, if the user needs to “run” multiple tasks simultaneously, the time-sharing system would also be most appropriate, as most personal computerÂ operatingÂ systemsÂ don’t support multiprocessing very well. (A personal computer, in contrast, would be better when theÂ jobÂ is small enough to be reasonably executed on it.
3. In the designing of the operating system there are two approaches modular kernel and layered approach? How are they different?
Ans3. In the desingning of the operating system the layered kernel imposes a strict ordering of subsystems such that subsystems at the lower layers are not allowed to invoke operations corresponding to the upper-layer subsystems. There are no such restrictions in the modular-kernel approach, where in modules are free to invoke each other without any constraints.
4. There is guest operating system and a host operating system like VMware? List all the factors in choosing the host operating system?
Ans4. The factors in choosing the host operating system as follows:
Local Area Networking (Optional)
Host Operating System
5. The kernel is responsible for a action with the processes. Search through the action of kernel and describe what is the action?
Ans5. Through the action of kernel action is described as State of current process is Saved and Restore State of incoming process.
6.Considering both the system level and the programmer level.
Consider the advantage and disadvantage of the following structure.
Synchronous and asynchronous communication.
Automatic and explicit buffering.
Send by copy and send by reference
Fixed-sized and variable-sized messages.
Ans6. a). Asynchronous communication utilizes a transmitter, a receiver and a wire without coordination about the timing of just how long the transmiter leaves the signal at a certain level to represent a single digital bit. Each device uses a clock to measure out the ‘length’ of a bit.
Asynchronous systems do not send separate information to indicate the encoding or clocking information. The receiver must decide the clocking of the signal on it’s own. This means that the receiver must decide where to look in the signal stream to find ones and zeroes, and decide for itself where each individual bit stops and starts.
In short, the two ends do not synchronize the connection before communicating. Asynchronous communication is more efficient when there is low loss and low error rates over the transmission medium because data is not retransmitted. In addition, there is no time spent setting up the connection at the beginning of transmission–you just transmit and let the end your computer’s keyboard and mouse.
Asynchronous is a faster means of connecting, but less reliable.
Synchronous systems negotiate the connection at the data-link level before communication begins. Basic synchronous systems will synchronize two clocks before transmission, and reset their numeric counters for errors etc. More advanced systems may negotiate things like error correction and compression.
It is possible to have both sides try to synchronize the connection at the same time. Usually, there is a process to decide which end should be in control. Both sides can go through a lengthy negotiation cycle where they exchange communications parameters and status information. Once a connection is established, the transmitter sends out a signal, and the receiver sends back data regarding that transmission, and what it received. This takes longer on low error-rate lines, but is highly efficient in systems where the transmission medium itself (an electric wire, radio signal or laser beam) is not particularly reliable.
b) Automatic buffering providesÂ a queue with indefinite length; thus ensuring the sender will neverÂ have to block while waiting to copy a message. There are no specificationsÂ how automatic buffering will be provided; one schemeÂ may reserve sufficiently large memory where much of the memoryÂ is wasted. Automatic makes programming easier but is a harder system to build.Â Â Explicit buffering specifies how large the bufferÂ is. In this situation, the sender may be blocked while waiting forÂ available space in the queue. However, it is less likely memoryÂ will be wasted with explicit buffering.
c)Â Send by copy and send by referenceÂ – Send by copy does notÂ allow the receiver to alter the state of the parameter; send by referenceÂ does allow it. Send by copy is better for network generalization and synchronization issues. Send by reference is more efficient for big data structures but harder to code because of the shared memory implications.A benefit of send by reference is that it allowsÂ the programmer to write a distributed version of a centralized application.Â
d)Â Fixed-sized and variable-sized messagesÂ – The implications ofÂ this are mostly related to buffering issues; with fixed-size messages,Â a buffer with a specific size can hold a known numberÂ of messages. The number of variable-sized messages that can beÂ held by such a buffer is unknown. Consider how Windows 2000Â handles this situation: with fixed-sized messages (anythingÂ <Â 256Â bytes), the messages are copied from the address space of theÂ sender to the address space of the receiving process. Larger messagesÂ (i.e. variable-sized messages) use shared memory to passÂ the message. Variable sized makes programming easier but is a harder system to build.