One of my friends gets away from the office twice a year for what he calls his "think week." He isolates himself from people, phone calls, and e-mail, and he devotes this time to reading. He ponders the state of technology of his company and in the world. He tries to understand what his company and others are working on and how they can move forward in a more strategic manner. He knows the value of pondering and planning.
Each of us can benefit by reserving time every day to simply think and plan—time to formulate ideas, problem solve, prioritize tasks, set goals, and daydream. Try to carry out this exercise at the same time and place each day, and avoid all other interactions during this period. Your most important task is to plan and prioritize what you will do with your day. If you are in a management role, you may actually spend most of your time planning and prioritizing the work of others.
Whether you are managing the corporate network, administering a mission-critical database, or designing and managing the enterprise information systems, there are issues that come up daily that can divert your attention from making progress on the work that really counts. By the end of the day, you can't really tell if you have actually gotten ahead or just fallen further behind.
Your goal should be to become more be preemptive, better organized, and better prepared to respond to IT emergencies. By planning, you can move from being reactive to proactive. In order to make that switch, though, you have to ponder, plan, and prioritize. It helps to maintain a task list—organized under three categories—and to start each day by reviewing this list: In Progress, ASAP, and Wish list. Using these lists, you can make time to create solutions that prevent crises from happening in the first place.
The In Progress list is the one that's critical to get right. It's vital that you make progress on these critical tasks each day. Deliver first on your company's and group's primary goals. Tasks that don't directly affect that priority can move lower down the list. If you are in a management position, put a process in place that helps all employees stay in sync with the top priorities.
The ASAP and Wish lists are usually for those strategic plans that will save your company time and money and thus make it more competitive. Identify these tasks and go after them slowly and methodically, moving them into your In Progress list as they become more of a priority.
Don't forget, though: just because you have these prioritized lists doesn't mean that anything will actually get done. Here are some tips to help you work through your tasks:
- Get the fast and easy tasks out of the way first.
- Next, do those things you are not as motivated to do.
- Finally, get on to the exciting tasks.
- Avoid context switching. Serialize your work if at all possible.
- However, if you get blocked on one thing, go on to the next task until you can switch back.
- Delegate or refuse tasks that don't make sense for you to do, or suggest alternatives.
- Know when you work best and are most productive. Reserve this time to focus on important tasks.
Knowing how to plan your time wisely will help you do your best work. People who drift through life without a plan are never really happy with where they arrive because they never really knew where they were going in the first place.
If you take a look around your Windows hard drive, you probably have noticed that a good number of operating system files hang out in the root directory of the boot drive. If you take a closer look at those files, you may notice a theme: boot.ini, NTLDR, and NTDETECT.COM are critical boot files, and hiberfil.sys is the hibernation file. These are all files that are involved in the crucial first stages of booting the operating system or, in the case of hiberfil.sys, resuming from hibernation, and they have to go into the root of the boot drive. Why can't you move them somewhere else?
My colleague Adrian Oney explained: in order to read the boot files off the disk, you need the file system driver, but the file system driver is on the disk, which you can't read until you've loaded the file system driver. Oh no, Catch-22!
The vicious cycle is broken by having a miniature file system driver built into the critical boot files. This miniature driver knows just barely enough to locate files in the root directory and load them into memory. Those files can, in turn, get the operating system off the ground, at which point the real file system driver can take over and look for files in much fancier places like subdirectories.
Hibernation follows a similar pattern. Hibernating the operating system means dumping the entire contents of memory into the hibernation file; restoring from hibernation entails sucking that file back into memory and pretending nothing happened. Again, it's another chicken-and-egg problem: to load the hibernation file, you need the file system driver, but the file system driver is in the hibernation file. If you keep the hibernation file in the root directory of the boot drive, the miniature file system driver can be used instead.
Those who have used early versions of MS-DOS® are well aware of this constraint on the location of the operating system boot files. The old SYS command made a boring old floppy disk into a magic bootable floppy disk. However, if you ran it on a floppy disk that already had data on it, there was a good chance the conversion would fail because early versions of MS-DOS required that the boot files occupy specific locations on the floppy disk in order for the boot sector to find them. Later versions of MS-DOS relaxed these requirements by making improvements to the boot loader, but even with the improved version, the system files still must reside in the root directory.
One customer asked, "Can I move the hibernation file into a subdirectory?" After all, why does it matter where the file is? The ACLs on the file would be the same regardless of where you put it. But these folks wanted to put it on a drive different from the boot drive and had been told that can't be done. They didn't really understand the reason for this restriction, so they tried an end run: well, if I can at least move it into a subdirectory, then I can create a directory and make that a junction that points to where I really want the hiberation file. Woo hoo—I relocated the hibernation file!
Of course, the miniature file system driver doesn't understand mount points, because mount points mean talking to the disk management service, and at the time the system is booting, the computer hasn't even loaded the operating system yet, much less some fancy advanced service that knows how to map drive letters back to ARC paths, and even if you somehow got that service running, you still have to find the device drivers for those other hard drives and load the corresponding file system drivers.
It's only a matter of time before somebody asks for a way to put the hibernation file on a DFS junction.
function oem2ansi ($str) {
for ($i = 0; $i
$ch = ord($str{$i});
switch($ch){
case 128: $out .= chr(199);break;
case 129: $out .= chr(252);break;
case 130: $out .= chr(233);break;
case 131: $out .= chr(226);break;
case 132: $out .= chr(228);break;
case 133: $out .= chr(224);break;
case 134: $out .= chr(229);break;
case 135: $out .= chr(231);break;
case 136: $out .= chr(234);break;
case 137: $out .= chr(235);break;
case 138: $out .= chr(232);break;
case 139: $out .= chr(239);break;
case 140: $out .= chr(238);break;
case 141: $out .= chr(236);break;
case 142: $out .= chr(196);break;
case 143: $out .= chr(197);break;
case 144: $out .= chr(201);break;
case 145: $out .= chr(230);break;
case 146: $out .= chr(198);break;
case 147: $out .= chr(244);break;
case 148: $out .= chr(246);break;
case 149: $out .= chr(242);break;
case 150: $out .= chr(251);break;
case 151: $out .= chr(249);break;
case 152: $out .= chr(255);break;
case 153: $out .= chr(214);break;
case 154: $out .= chr(220);break;
case 155: $out .= chr(248);break;
case 156: $out .= chr(163);break;
case 157: $out .= chr(216);break;
case 158: $out .= chr(215);break;
case 159: $out .= chr(131);break;
case 160: $out .= chr(225);break;
case 161: $out .= chr(237);break;
case 162: $out .= chr(243);break;
case 163: $out .= chr(250);break;
case 164: $out .= chr(241);break;
case 165: $out .= chr(209);break;
case 166: $out .= chr(170);break;
case 167: $out .= chr(186);break;
case 168: $out .= chr(191);break;
case 169: $out .= chr(174);break;
case 170: $out .= chr(172);break;
case 171: $out .= chr(189);break;
case 172: $out .= chr(188);break;
case 173: $out .= chr(161);break;
case 174: $out .= chr(171);break;
case 175: $out .= chr(187);break;
case 176: $out .= chr(166);break;
case 177: $out .= chr(166);break;
case 178: $out .= chr(166);break;
case 179: $out .= chr(166);break;
case 180: $out .= chr(166);break;
case 181: $out .= chr(193);break;
case 182: $out .= chr(194);break;
case 183: $out .= chr(192);break;
case 184: $out .= chr(169);break;
case 185: $out .= chr(166);break;
case 186: $out .= chr(166);break;
case 187: $out .= chr(43);break;
case 188: $out .= chr(43);break;
case 189: $out .= chr(162);break;
case 190: $out .= chr(165);break;
case 191: $out .= chr(43);break;
case 192: $out .= chr(43);break;
case 193: $out .= chr(45);break;
case 194: $out .= chr(45);break;
case 195: $out .= chr(43);break;
case 196: $out .= chr(45);break;
case 197: $out .= chr(43);break;
case 198: $out .= chr(227);break;
case 199: $out .= chr(195);break;
case 200: $out .= chr(43);break;
case 201: $out .= chr(43);break;
case 202: $out .= chr(45);break;
case 203: $out .= chr(45);break;
case 204: $out .= chr(166);break;
case 205: $out .= chr(45);break;
case 206: $out .= chr(43);break;
case 207: $out .= chr(164);break;
case 208: $out .= chr(240);break;
case 209: $out .= chr(208);break;
case 210: $out .= chr(202);break;
case 211: $out .= chr(203);break;
case 212: $out .= chr(200);break;
case 213: $out .= chr(105);break;
case 214: $out .= chr(205);break;
case 215: $out .= chr(206);break;
case 216: $out .= chr(207);break;
case 217: $out .= chr(43);break;
case 218: $out .= chr(43);break;
case 219: $out .= chr(166);break;
case 220: $out .= chr(95);break;
case 221: $out .= chr(166);break;
case 222: $out .= chr(204);break;
case 223: $out .= chr(175);break;
case 224: $out .= chr(211);break;
case 225: $out .= chr(223);break;
case 226: $out .= chr(212);break;
case 227: $out .= chr(210);break;
case 228: $out .= chr(245);break;
case 229: $out .= chr(213);break;
case 230: $out .= chr(181);break;
case 231: $out .= chr(254);break;
case 232: $out .= chr(222);break;
case 233: $out .= chr(218);break;
case 234: $out .= chr(219);break;
case 235: $out .= chr(217);break;
case 236: $out .= chr(253);break;
case 237: $out .= chr(221);break;
case 238: $out .= chr(175);break;
case 239: $out .= chr(180);break;
case 240: $out .= chr(173);break;
case 241: $out .= chr(177);break;
case 242: $out .= chr(61);break;
case 243: $out .= chr(190);break;
case 244: $out .= chr(182);break;
case 245: $out .= chr(167);break;
case 246: $out .= chr(247);break;
case 247: $out .= chr(184);break;
case 248: $out .= chr(176);break;
case 249: $out .= chr(168);break;
case 250: $out .= chr(183);break;
case 251: $out .= chr(185);break;
case 252: $out .= chr(179);break;
case 253: $out .= chr(178);break;
case 254: $out .= chr(166);break;
case 255: $out .= chr(160);break;
default : $out .= chr($ch);
}
}
return $out;
}