Table of Contents
Samantha Weller
Fall Semester Opus
Stuff is happening all the time.
Introduction
Hello My Name is Sam. I am taking HPCI, Data Structures, System Programing. I like computing some time its fun and some times it just funny to see what it will do or what it can and can't do. I spend a good part of my time on a computer and more of my time thanking about computers. I have fun just playing around with some computer programming and building them out of what I have left for parts. I'm hoping to find work and get out in the workforce and see what's it really like. I hope that it not like “Dilbert” but it would not surprise me if it was.
Part 1
Entries
September 2, 2011
Working with pointer and link list. Fun fun.
The wonderful pointers that make the link list of happy and not so happy.
→ → → → → → → → → → → → → → →
This is the starter of the pointing that will lead to more pointing and then even more pointing.
Then when all is pointing we pop it.
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
Topics Data
Version Control (checkout, commit, update, add, log)
Version Control is where you pick a time to save it to the system the system keep this version with the date and time that it was made in a list of other versions of the same program. like version1 version2.6 version3 and so on. There are version Control like SVN. This kind of Version Control System can be used by groups to work on collaborating projects. With this type of version control you have to add the file then commit it to the repository then its in the system.
checkout- commit- update- add- log-
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
/* A small program to save different copes of the same program at different * points so that if changers are made the user can go back to before * the changer where made. */ #include <stdio.h> int main() { return(0); }
Pointers (address of, assignment, dereferencing)
Pointers work by having the address that they point to the thing that your working with. A is a pointer to B, B points to NULL, C points to A.
letter | Address | Address being pointing to |
---|---|---|
A | 0001 | 0010 |
B | 0010 | NULL |
C | 0011 | 0001 |
arrays, pointer arithmetic
pointers to pointers
A pointer may point to another pointer that could point to another pointer.
Pointer | Whats being pointed at | address |
---|---|---|
A | 0011 | 0001 |
B | 0100 | 0010 |
C | 0010 | 0011 |
D | 0001 | 0100 |
Here A points to C, C points to B, B points to D, D points to A.
null pointers
Pointing to Null.
void pointers
Pointers with no data type.
function pointers
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
/* * * */ #include <stdio.h> int main() { return(0); }
Static allocation vs. Dynamic allocation
Static Allocation | VS | Dynamic Allocation |
---|---|---|
Memory allocation (malloc(), new)
Memory allocation is making a space to store the new data in.
Memory De-allocation (free(), delete)
Memory De-allocation is freeing up the space that was used to store data in.
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Structures
A structure is a group of variable in a single container.
structure pointer
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Topics Sys Prog
UNIX Systems Programming
Unix system programming is the coolest thing ever if you have no idea what it is your in the wrong place. Not really. Yeah its cool and stuff but there is a lot to Systems programming. In this case we are limited to Unix, this is really good for if having to chose I would chose Unix or Linux. To start there is understanding the operating system, files, network, programs, commands, signals, shell, kernel, user space, multiple user system and a lot more.
User space
This space is just for the user and all of there junk and the programs/applications.
Kernel, Kernel space
Kernel space is it's own happy place that is where the Kernel lives. It lives in between the applications and the CPU (memory, device). There's a lot of traffic that goo's thru the Kernel to get to some form of hardware.
Software | ↔ | Kernel | ↔ | Hardware |
Users, Files, and the Manual
Users are people that uses. Files are folders. Manual is a Document that describes how something works.
So users use manual to find out how to make a file and then uses the documentation in the manual to fill the file.
File Access (open, read, write, lseek, close)
Opening a file means that you have the ability to see what is in the file. fp = fopen(FileName, Mode); This will open the file the mode says what you want to do.
Reading a file means that you can see the data of the file that you opened. Setting the mode to r will let you read from the file. Ones the file is open you can also read the file using printf.
Writing to a file means that you can edit it. Setting the mode to w will let you write to the file. Ones the file is open you can also write to the file using scanf.
Closing a file means that its no longer open to be used.
lseek allows the file to be add to at the end, append.
File descriptors
Buffering
System Calls
Directories and File Properties
File Types and File Properties
Bit Sets and Bit Masks
User IDs, Group IDs
Topics HPC 1
Bourne Shell (sh shell)
This is a default shell for Unix. Its the most simple shell for Unix systems. Its the sh shell. It was made to replace the original shell made by Thompson.
/bin/sh
Maintenance
Is to fix or correct, clean, keeping up-dated.
Software maintenance is fixings bug's that where found after release, and up-dating the software so that it can work with new software that came out.
Maintenance is needed for lots of reasons, its main goal is to keep the something working as it should.
logging
Logging is the presses of cutting down tree's for use. Or it could mean the presses of logging activity or events. When a computer keeps a log it some important data in a file or a file of important data.
Log | |||
---|---|---|---|
Date | Time | Event | Change |
10/23/11 | 10:30 am | UP | 10° |
10/23/11 | 12:45 am | DN | 15° |
10/23/11 | 03:25 pm | UP | 23° |
10/23/11 | 04:50 pm | DN | 25° |
10/24/11 | 11:20 am | UP | 11° |
This is a log of Temperature change it only logs when the temperature changes in a different direction.
Accessibility
To be able to have the ability and the access to use something. In Computing Accessibility it's about the computer being able to give someone access to the system and then the program giving the ability the the user to do something.
Some thing to Read |
---|
<HTML><table width=“275”; ><td style=“background-color:#080805;”><h2>Can you read me?</h2></td></HTML>
If not look harder. |
Can you see what is in the Box?
Upgrades
Upgrading is the process that should bring the ability of some thing to a more advanced level.
backups
A file that is saved else where or is saved before a test is run or compiled.
documentation
Documentation is a manual or a webpage that describe what it is and what it can do, and how it works.
resource usability
Remote Administration
This is where the computer is controlled from a location other then physically controlling it or getting data from it. This requires the use of a network and some times the internet.
on-site administration
security - internal
log analysis
Making sense of computer generated logs. Like understanding what a log of info is saying. Take temp log. This is a log of the daily temps.
Time | Temp |
---|---|
12:01 | 32 |
1:01 | 29 |
2:01 | 26 |
3:01 | 24 |
4:01 | 21 |
5:01 | 22 |
6:01 | 23 |
7:01 | 28 |
This log is saying that its colds at about 4am in the morning. And that temp drops from 12:01 to 4:01 then rises at 5:01 to 7:01.
Data Objective
Objective
State the course objective; define what that objective entails.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
HPC1 Objective
Objective
State the course objective; define what that objective entails.
My objective is to get the documentation done for the wall how to. Other objectives are to find out more about samba.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
Sysprog Objective
Objective
State the course objective; define what that objective entails.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
Experiments
Experiment 1
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Experiment 2
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Experiment 3
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Retest
If you're doing an experiment instead of a retest, delete this section.
If you've opted to test the experiment of someone else, delete the experiment section and steps above; perform the following steps:
State Experiment
Whose existing experiment are you going to retest? Prove the URL, note the author, and restate their question.
Resources
Evaluate their resources and commentary. Answer the following questions:
- Do you feel the given resources are adequate in providing sufficient background information?
- Are there additional resources you've found that you can add to the resources list?
- Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
- If you find a deviation in opinion, state why you think this might exist.
Hypothesis
State their experiment's hypothesis. Answer the following questions:
- Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
- What improvements could you make to their hypothesis, if any?
Experiment
Follow the steps given to recreate the original experiment. Answer the following questions:
- Are the instructions correct in successfully achieving the results?
- Is there room for improvement in the experiment instructions/description? What suggestions would you make?
- Would you make any alterations to the structure of the experiment to yield better results? What, and why?
Data
Publish the data you have gained from your performing of the experiment here.
Analysis
Answer the following:
- Does the data seem in-line with the published data from the original author?
- Can you explain any deviations?
- How about any sources of error?
- Is the stated hypothesis adequate?
Conclusions
Answer the following:
- What conclusions can you make based on performing the experiment?
- Do you feel the experiment was adequate in obtaining a further understanding of a concept?
- Does the original author appear to have gotten some value out of performing the experiment?
- Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).
Part 2
Entries
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
October 21, 2011
I found out how important order can be and is.
I made a program that should have read in a file then changed the values in it to HEX, it then saved this. Next it would take the HEX file that it just made and read it in and replace the HEX with the binary values of the HEX. The program did not work and yet it didn't work. The first part worked be the second part did not because part of the program was happening before the other part so it would make the file full of HEX but it was not reading that out. So all that could be seen is the text its self before it was put in HEX. Thus the order has to be in a different order then what it was to work the way I wanted it to work.
October 24, 2011
Bitset that there is a special way to store store bits in C++ and that you can store just the bits.
Its just so cool what can be-found when looking for other stuff. There's set reset and flip.
Data Topics
Linked Lists
A Linked Lists is a string on nodes that are connected. There only one way. Node1 → Node2 → Node3.
→ → →
Doubly Linked Lists
A Doubly linked list is a linked list that is two way and not just one.
↔ ↔ ↔
Stacks (array-based, linked-list based)
A Stack is a nice and neat pile of items. A stack can be a array-based or linked-list-based. Both kinds need to be filled by pushing a item in to that stack and to remove a item you pop it from that stack and this can only be done from the top of the stack.
Pushing
This is like putting something on top of something else. As you push new items on the list it gets longer. This adds a item to the stack.
NewTop | ||||||
---|---|---|---|---|---|---|
NewTop | OldTop | |||||
NewTop | OldTop | OlderTop | ||||
Top | OldTop | OldestTop | OldestTop |
Popping
Popping is when you take a item from the list. So that when the top item is popped its taken off the Stack. This is taking a item from the stack.
Item1 | POP | |||||||
---|---|---|---|---|---|---|---|---|
Item2 | Item2 | POP | ||||||
Item3 | Item3 | Item3 | POP | |||||
Item4 | Item4 | Item4 | Item4 | POP |
Top
The Top is the Item that is in the top most place of the stack. This lets you get to the next item in the stack.
Top |
---|
Ntop |
Ntop |
This is where a stack has used up its memory and is now overflowing. This happens when the memory is not big enough for the data that is filling it when it reaches the most it can handle it overflows.
Underflow condition
This is where there is not enough data to fill the stack.
LIFO or FIFO?
A stack is LIFO or FILO. For the last one in is the first one out. Or the first one in is the last one out.
Queues (array-based, linked-list based)
Enqueuing
Dequeuing
Overrun and Underrun conditions
LIFO or FIFO?
HPC1 Topics
Troubleshooting
Troubleshooting is what is done when there is a problem (i.e. when it's not working correctly ). If the computer is not coming on when you push the button. Is it plugged in, is the power strip on, did the power supply go, is it the motherboard, is it beeping, and so on. First you look for the most simple thing that can go wrong and start there. Then move to the next thing in line after that. One's you have tested and looked at every thing it could be and some stuff that it might be it might start working or it might not. While in the proses of working it out you are troubleshooting. ones you are done you have fixed it or have to find a workaround.
security - external
LIFO & FIFO
LIFO - Last in First out
Stack | In | Out |
---|---|---|
4 - 1 | last | first |
3 - 2 | third | second |
2 - 3 | second | third |
1 - 4 | first | last |
FIFO - First in First out
Stack | In | Out |
---|---|---|
4 - 4 | last | last |
3 - 3 | third | third |
2 - 2 | second | second |
1 - 1 | first | first |
Keyword 4
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 5
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 6
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 7
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 8
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 9
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 10
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 11
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 12
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Sysprog Topics
Focus on File Systems
Filesystem Structure; inodes and data blocks
Directories
Links
Connection Control
Device files
Race conditions
Atomic Operations
Streams
Terminal Control and Signals
Blocking vs. Non-Blocking
Signals
Event-Driven Programming
Alarms, Interval Timers
Reentrant code, critical sections
Asynchronous input
Data Objective
Objective
Describe how the data structures are allocated and used in memory; define what that objective entails.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
HPC1 Objective
Objective
State the course objective; define what that objective entails.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
Sysprog Objective
Objective
State the course objective; define what that objective entails.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
Experiments
Experiment 1
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Experiment 2
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Retest
If you're doing an experiment instead of a retest, delete this section.
If you've opted to test the experiment of someone else, delete the experiment section and steps above; perform the following steps:
State Experiment
Whose existing experiment are you going to retest? Prove the URL, note the author, and restate their question.
Resources
Evaluate their resources and commentary. Answer the following questions:
- Do you feel the given resources are adequate in providing sufficient background information?
- Are there additional resources you've found that you can add to the resources list?
- Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
- If you find a deviation in opinion, state why you think this might exist.
Hypothesis
State their experiment's hypothesis. Answer the following questions:
- Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
- What improvements could you make to their hypothesis, if any?
Experiment
Follow the steps given to recreate the original experiment. Answer the following questions:
- Are the instructions correct in successfully achieving the results?
- Is there room for improvement in the experiment instructions/description? What suggestions would you make?
- Would you make any alterations to the structure of the experiment to yield better results? What, and why?
Data
Publish the data you have gained from your performing of the experiment here.
Analysis
Answer the following:
- Does the data seem in-line with the published data from the original author?
- Can you explain any deviations?
- How about any sources of error?
- Is the stated hypothesis adequate?
Conclusions
Answer the following:
- What conclusions can you make based on performing the experiment?
- Do you feel the experiment was adequate in obtaining a further understanding of a concept?
- Does the original author appear to have gotten some value out of performing the experiment?
- Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).
Part 3
Entries
November 12, 2011
On this day I seen that all thing in computers work on similar bases to each-other. And that even tho some thing it would seem have nothing in common they do on some level. Like USB protocol and TFTP RFC 1350
USB protocol then RFC 1350 Token Packet then RRQ/WRQ
Field | Pid | Add | EndP | CRC 5 | EOP |
---|---|---|---|---|---|
Bits | 8 | 7 | 4 | 5 | |
Field | 2 bytes | string | 1 byte | string | 1 byte |
01/02 | FileName | mode |
The two are still different but the token and the RRQ/WRQ do about the same thing and the format of both is similar. The token sets up read/send and control transfer. The RRQ/WRQ this sets the read/write and send the info on how to read the file. Both are one of the first thing sent both say what they are in the first part (Pid , 2 bytes). And both end with a zero value. And both have a way of passing the file ether by Name in RFC or by Address(amusing that a devise is a file to).
The little similarity in just the first pack are very commend even with other things that have to send data. But with the USB having to send data over a serial bus that it would have less in-common with TFTP.
November 14 2011
Forking is cloning. So cloning makes a double that is close to the same as the original with some copies of the stuff it has. So it clones the parent to make children or a child. I thank this was outlawed. So now that there's a bunch of clone kids they can be sent out to do the Parents bidding and after there done the kids just die. Then the parent come's and collects there kid's by waiting. In most of the world this is not allowed and there's some sort of prison time involved.
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
Month Day, Year
This is a sample format for a dated entry. Please substitute the actual date for “Month Day, Year”, and duplicate the level 4 heading to make additional entries.
As an aid, feel free to use the following questions to help you generate content for your entries:
- What action or concept of significance, as related to the course, did you experience on this date?
- Why was this significant?
- What concepts are you dealing with that may not make perfect sense?
- What challenges are you facing with respect to the course?
Remember that 4 is just the minimum number of entries. Feel free to have more.
Data Topics
Computational Complexity
Big-O, Theta, bounds
Sorting Algorithms
Selection sort algorithm
Bubble sort algorithm
This sorting algorithm takes two elements compares them and if you are sort it from less to most then it will move the lower element to the front of the pair and the higher to the back.
This is how the sort works.
22 | 44 | 11 | 55 | 33 |
( 22 ↔ 44 ) | ||||
22 | 44 | 11 | 55 | 33 |
( 11 ↔ 44 ) | ||||
22 | 11 | 44 | 55 | 33 |
( 44 ↔ 55 ) | ||||
22 | 11 | 44 | 55 | 33 |
( 33 ↔ 55 ) | ||||
22 | 11 | 44 | 33 | 55 |
( 11 ↔ 22 ) | ||||
11 | 22 | 44 | 33 | 55 |
( 22 ↔ 44 ) | ||||
11 | 22 | 44 | 33 | 55 |
( 33 ↔ 44 ) | ||||
11 | 22 | 33 | 44 | 55 |
Insert sort algorithm
Quick sort algorithm
Merge sort algorithm
Binary Search algorithm
Trees, Binary Trees (nodes, parents, children)
insertion
removal
searching
traversal (pre-order, post-order, in-order)
Graphs
Hash Tables (keys, collisions)
HPC1 Topics
Internet Memes
Are images that get posted on the internet that then get changed by people on the net to be funny. Or there just made up.
Nyan cat: http://nyan.cat/
Leek spinning: http://leekspin.com/
Philosoraptor: http://fuckyeahphilosoraptor.tumblr.com/
And many many more are out there now waiting to be seen.
LVM
LVM = Logical Volume Manager or Management.
This is a disk drive manage it also dose other storage devices, mostly for big drives. Some operating systems have LVM built in to them like Debian, Ubuntu, Gentoo, that can make a boot-able filesystem on the logical volume.
Physical Volume | |||
---|---|---|---|
1 | 2 | 3 | 4 |
Root | Var | Root | Home |
Root logical volume one
Physical area 1 & 3
Var logical volume two
Physical area 2
Home logical volume three
Physical area 4
USB Protocol
It the protocol used for USB. With a USB being a serial bus it mean's that the data need to be put in to packets for sending and receiving. So USB has a protocol that it uses for this.
This is a Token Packet
Field | Pid | Add | EndP | CRC 5 | EOP |
---|---|---|---|---|---|
Bits | 8 | 7 | 4 | 5 |
This is a Start of Frame packet
Field | Pid | FrameNumber | CRC 5 | EOP |
---|---|---|---|---|
Bits | 8 | 11 | 5 |
This is a Data packet
Field | Pid | Data | CRC 16 | EOP |
---|---|---|---|---|
Bits | 8 | 0-8192 | 16 |
The CRC is only computed over the data field it doesn't include the PID.
There are more packet than this there is the Handshake packet and a Ping packet.
Prototype
A model, sample, test, process, that act's a thing to learn from or to replicate.
In this there where Prototypes A - C where set up. What there after is how to make C.
Prototype A | ||||
---|---|---|---|---|
A | + | B | = | ?Fail Cat? |
Prototype B | ||||
D | + | A | = | ?Evil Monkey? |
Prototype C | ||||
C | - | A | = | B |
None of these Prototype came out with the right answer.
Prototype A - C can still be used as a learning tool to get to C
Prototype D | ||||
---|---|---|---|---|
D | - | A | = | C |
Prototype D answered the question on how to get C. In this demonstration we start with a Test that Fails. Then another Test sampling Prototype A this Fails as well. From A and B its learned that C can't be achieved in this manner. Then Prototype C has a Sampling of A and B that is another Test. This is then model a little different to get Prototype D that works. From there the process is replicate to make more C.
Keyword 5
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 6
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 7
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 8
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 9
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 10
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Keyword 11
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:
/* * Sample code block */ #include <stdio.h> int main() { return(0); }
Keyword 12
Identification and definition of the chosen keyword. Substitute “keyword” with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src lab46:~/src$ gcc -o hello hello.c lab46:~/src$ ./hello Hello, World! lab46:~/src$
Sysprog Topics
Processes and Programs
UNIX process model, processes
Parent/Child processes
Shell Variables and the Environment
I/O Redirection and Pipes
I/O Redirection
Pipes
Servers and Sockets
Client/Server model
Coroutines
Connections and Protocols
Server sockets
Client sockets
Zombies
Will eat your brains. Not really there just processes that did not die with the rest. There are two kinds of zombies.
Programming with Datagrams
TCP vs. UDP
Distributed Systems
UNIX domain sockets
Threads
Multithreading
Creating/destroying threads
Sharing data between threads
Synchronizing data
Inter Process Communication
Named pipes
Shared memory
File locks
Semaphores
Data Objective
Objective
State the course objective; define what that objective entails.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
HPC1 Objective
Objective
State the course objective; define what that objective entails. I am taking the time to find out more about Debain and what its like to run my own server using samba. So I'm reading up on all the stuff it asks well loading up.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective. The measure that I have set forth is that I will have a working server that I can use and I will understand what is going on and what all that stuff is that its asking for. I know all the general parts of what is going on but the other things like what LVM is and what it dose for a Linux system. Mostly I just want the server working and to know what all that little stuff is and what it's doing.
Measurement
Follow your method and obtain a measurement. Document the results here.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
Sysprog Objective
Objective
State the course objective; define what that objective entails. I am hoping that this months objective is to get a program that can run on different computers as one. So hoping.
Method
State the method you will use for measuring successful academic/intellectual achievement of this objective. That I write a program that can be run on multiple systems. Even if it can't I just want to know how its done and how close I can get.
Measurement
Follow your method and obtain a measurement. Document the results here. That I have a running program that is forked so that it can run on different systems.
Analysis
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
- How did you do?
- Room for improvement?
- Could the measurement process be enhanced to be more effective?
- Do you think this enhancement would be efficient to employ?
- Could the course objective be altered to be more applicable? How would you alter it?
Experiments
Experiment 1
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Experiment 2
Question
What is the question you'd like to pose for experimentation? State it here.
Resources
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
Hypothesis
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
Experiment
How are you going to test your hypothesis? What is the structure of your experiment?
Data
Perform your experiment, and collect/document the results here.
Analysis
Based on the data collected:
- was your hypothesis correct?
- was your hypothesis not applicable?
- is there more going on than you originally thought? (shortcomings in hypothesis)
- what shortcomings might there be in your experiment?
- what shortcomings might there be in your data?
Conclusions
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
Retest
If you're doing an experiment instead of a retest, delete this section.
If you've opted to test the experiment of someone else, delete the experiment section and steps above; perform the following steps:
State Experiment
Whose existing experiment are you going to retest? Prove the URL, note the author, and restate their question.
Resources
Evaluate their resources and commentary. Answer the following questions:
- Do you feel the given resources are adequate in providing sufficient background information?
- Are there additional resources you've found that you can add to the resources list?
- Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
- If you find a deviation in opinion, state why you think this might exist.
Hypothesis
State their experiment's hypothesis. Answer the following questions:
- Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
- What improvements could you make to their hypothesis, if any?
Experiment
Follow the steps given to recreate the original experiment. Answer the following questions:
- Are the instructions correct in successfully achieving the results?
- Is there room for improvement in the experiment instructions/description? What suggestions would you make?
- Would you make any alterations to the structure of the experiment to yield better results? What, and why?
Data
Publish the data you have gained from your performing of the experiment here.
Analysis
Answer the following:
- Does the data seem in-line with the published data from the original author?
- Can you explain any deviations?
- How about any sources of error?
- Is the stated hypothesis adequate?
Conclusions
Answer the following:
- What conclusions can you make based on performing the experiment?
- Do you feel the experiment was adequate in obtaining a further understanding of a concept?
- Does the original author appear to have gotten some value out of performing the experiment?
- Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).